16.8.15

Linux Bash: Fortschritt beim Kopieren berechnen

Ich kopiere oftmals große Datenmengen und möchte auf einen Blick wissen, welche Datenrate im Moment genutzt wird.
Das ganze gestaltet sich schwierig, wenn Hintergrundprozesse verwendet werden wie bei meinem NAS, wo ein Rsync läuft.

Aber ein Einzeiler hilft hier:

a=0;wait=10;while true; do i=`df -m | grep sdd | awk '{ print $3 }'`; echo -n $i " MByte => "; echo -n $(($i-$a)); echo " ==> " $((($i-$a)/$wait)) " MB/s"; a=$i; sleep $wait; done

Ich lasse mir anzeigen, welche Fortschritte im 10-Sekunden-Rhytmus gemacht werden, hier bei meiner Platte sdd1.
Natürlich ist die Anzeige nur korrekt, wenn nur ein Rsync-/Kopierauftrag läuft :)

Ausgabe z.B.:
104876  MByte => 44 ==>  4  MB/s


Das ist die belegte Plattengröße in Megabyte und anschließend die Änderung seit der letzten Anzeige.

Keine Kommentare:

Kommentar veröffentlichen

Openhab und Ecoflow Max - API Anbindung

 Ich wollte die neu erworbene Powerstation in Openhab einbinden, um den aktuellen Status (Ladestand etc.) über Openhab auswerten zu können. ...