Introduzione
Il gg L'utilità della riga di comando viene utilizzata per convertire e copiare file su sistemi operativi Unix e simili a Unix. Per impostazione predefinita, il dd
il comando non mostra alcun output durante il trasferimento dei file.
Questo potrebbe essere problematico quando si copiano file di grandi dimensioni poiché non è possibile monitorare il processo.
In questo tutorial imparerai come usare il dd
comando per mostrare i progressi.
Prerequisiti
- Un sistema che esegue Linux
- Un account utente con privilegi sudo o root
- Accesso a una finestra di terminale/riga di comando
- GNU Coreutils versione 8.24 o successiva
Verifica dd versione
Per visualizzare la barra di avanzamento durante la copia di file e directory con il dd
comando, è necessaria una versione di dd (coreutils) non più vecchio di 8,24 . Verifica la versione con il comando:
dd --version
Al momento della scrittura, l'ultima versione di dd (coreutils) è 8:30 come si vede nell'immagine sopra.
Opzione 1:usa il comando dd per mostrare i progressi
La sintassi di base per l'utilizzo di dd
il comando è:
dd if=/path/to/input of=/path/to/output
Tuttavia, le impostazioni predefinite non mostrano una barra di avanzamento o alcun output durante il processo.
Per visualizzare la barra di avanzamento, aggiungi status=progress
attributo al comando di base:
dd if=/path/to/input of=/path/to/output status=progress
Durante la copia del file specificato, il sistema mostra la quantità di dati che è stata copiata e il tempo trascorso.
Una volta completato il processo, il terminale visualizza la quantità totale di dati trasferiti e la durata del processo.
Opzione 2:usa il comando dd con pv per mostrare i progressi
Il pv
Il comando consente a un utente di vedere lo stato di avanzamento dei dati attraverso una pipeline. Puoi usarlo con il dd
comando per mostrare lo stato di avanzamento di un'attività specifica.
Per farlo, devi installare pv.
Sui sistemi Ubuntu/Debian esegui:
sudo apt install pv
Sui sistemi CentOS/Redhat eseguiti:
sudo yum install pv
Per utilizzare pv
con il dd
comando segui la sintassi:
dd if=/path/to/input | pv | dd of=/path/to/output