English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Comando dd di Linux

大全命令Linux

Il comando dd di Linux serve per leggere, convertire ed esportare dati.

dd può leggere dati dall'input standard o da un file, convertire i dati secondo il formato specificato e poi esportare i dati in un file, un dispositivo o l'output standard.

Spiegazione dei parametri:

  • if=nome_file: nome del file di input, predefinito è l'input standard. Specifica il file sorgente.
  • of=nome_file: nome del file di output, predefinito è l'output standard. Specifica il file di destinazione.
  • ibs=bytes: legge bytes byte alla volta, ovvero specifica la dimensione del blocco di input.
    obs=bytes: esce bytes byte alla volta, ovvero specifica la dimensione del blocco di output.
    bs=bytes: imposta contemporaneamente la dimensione del blocco di lettura/scrittura a bytes byte.
  • cbs=bytes: converte bytes byte alla volta, ovvero specifica la dimensione del buffer di conversione.
  • skip=blocks: salta blocks di blocchi dall'inizio del file di input prima di iniziare a copiare.
  • seek=blocks: salta blocks di blocchi dall'inizio del file di output prima di iniziare a copiare.
  • count=blocks: copia solo blocks di blocchi, la dimensione del blocco è uguale al numero di byte specificato da ibs.
  • conv=<chiave>,le chiavi possono essere le seguenti 11:
    • conversion: converte il file con i parametri specificati.
    • ascii: converte ebcdic in ascii
    • ebcdic: converte ascii in ebcdic
    • ibm: converte ascii in ebcdic alternativo
    • block: converte ogni riga in lunghezza cbs, riempiendo la parte mancante con spazi
    • unblock: rende la lunghezza di ogni riga uguale a cbs, riempiendo la parte mancante con spazi
    • lcase: converte i caratteri maiuscoli in minuscoli
    • ucase: converte i caratteri minuscoli in maiuscoli
    • swap: scambia ogni paio di byte di input
    • noerror: non si ferma in caso di errore
    • notrunc: non tronca il file di output
    • sync: riempie ogni blocco di input con ibs byte, riempiendo la parte mancante con caratteri di cancellazione (NUL).
  • --help: visualizza le informazioni di aiuto
  • --version: visualizza le informazioni sulla versione

Esempio online

Per creare un disco di avvio in Linux, utilizzare il seguente comando:

dd if=boot.img of=/dev/fd0 bs=1440k 

Per convertire tutte le lettere minuscole del file testfile in maiuscole e trasformarle in testfile_1, utilizzare il seguente comando nel prompt dei comandi:

dd if=testfile_2 of=testfile_1 conv=ucase 

Il contenuto di testfile_2 è il seguente:

$ cat testfile_2 #contenuto di testfile_2  
HELLO LINUX!  
Linux è un sistema operativo libero di tipo Unix.  
Questo è un file di test di Linux!  
test Linux 

Dopo la conversione, il contenuto di testfile_1 è il seguente:

$ dd if=testfile_2 of=testfile_1 conv=ucase #Utilizza il comando dd per registrare la conversione di maiuscole minuscole, registrato 0+1 in entrata  
registrato 0+1 in uscita  
copiati 95 byte (95 B), 0.000131446 secondi, 723 KB/s  
cmd@hdd-desktop:~$ cat testfile_1 #Visualizza il contenuto del file testfile_1 convertito  
HELLO LINUX!  
LINUX È UN SISTEMA OPERATIVO FREE DI TIPO UNIX.  
THIS IS A LINUX TESTFILE!  
TEST LINUX #tutti i caratteri nel file testfile_2 sono diventati maiuscoli 

Legge una stringa dal dispositivo di input standard, la converte in maiuscolo e la scrive sul dispositivo di output standard, utilizzando il comando:

dd conv=ucase 

Premi invio dopo aver inserito il comando sopra, inserisci una stringa, premi invio di nuovo, esci con la combinazione di tasti Ctrl+D, e ottieni i seguenti risultati:

$ dd conv=ucase 
Hello Linux! #Inserisci una stringa e premi invio  
HELLO LINUX! #Esci con la combinazione di tasti Ctrl+D, risultati in maiuscolo  
registrato 0+1 in entrata  
registrato 0+1 in uscita  
copiati 13 byte (13 B), 12.1558 secondi, 0.0 KB/s 

大全命令Linux