Skip to content

Coreutils: dd kann jetzt sprechen

Bei der Verwendung von dd steht ja immer die Frage im Raum, wie weit es schon ist. Mit Coreutils 8.24 wurde dd nun die Fortschrittsanzeige beigebracht.

Bisher brauchte ich immer einen anderen Prozess, der ein Signal an den dd-Prozess gesendet hat, damit dieses den eigenen Fortschritt ausgibt. Das sah in der Regel so aus.

$ watch 'killall dd -USR1'

Dies lässt alle dd-Prozesse alle zwei Sekunden den aktuellen Fortschritt ausgeben.

Coreutils 8.24 und neuere

Bei einer am Puls der Zeit mitlaufenden Linux-Distribution reicht es aus, dd einen weiteren Parameter mitzugeben.

$ dd if=/dev/zero of=/dev/mmcblk0 status=progress
1222816256 bytes (1,2 GB, 1,1 GiB) copied, 491,063 s, 2,5 MB/s

Wenn man den Parameter status beim Start von dd vergessen hat, funktioniert die alte Variante natürlich auch noch.

Ob man das coole Feature nutzen kann, lässt sich natürlich auch leicht herausfinden.

$ dd --version
dd (coreutils) 8.25

Fazit

Ich finde es schön, dass auch dieses Stück Software noch hervorragend gepflegt wird. Ich hoffe, Euch hilft dieser Tipp bei der nächsten Kopierorgie. :-)

Kommentare

Anatol am :

SIGUSR1 führt unter OSX zum Abbruch, `killall dd -INFO` funktioniert aber. Davon abgesehen: `dd if=/von/hier | pv | dd of=/nach/dort`

Kommentar schreiben