Häufig hat man das Problem das man nicht weis wie lange den ein dd noch brauchen wird um die Platte
zu spiegeln, oder wie schnell der Datentransfer via netcat überhaupt läuft. Genau hierfür wurde das
kleine Tool pv geschrieben welches den
Datendurchsatz von pipes messen kann.
Ich selbst muss leider gestehen das ich dieses prima Tool bis letzten Sonntag noch nicht mal kannte
und eher zufällig von guten bekannten davon erfahren habe.
pv ist bei Ubuntu im universe, bei Debian im main und bei Arch
im community Repository zu finden. Es benötigt nur wenige KByte auf der Festplatte und ist daher auf
jedem System verwendbar.
Ich werde hier nicht die Manpage 1:1 runterleiern und nur die 2 häufigsten Verwendungsarten anschneiden,
welche man im täglichen Alltag verwenden dürfte.
Das eine ist ein Ersatz für das gute alte cat welches wohl jeder Leser dieses Blog kennen dürfte:
pv dateiname | nc -w 1 serveradresse portnummer
Hier erkennt
pv selbständig wie groß
dateiname eigentlich ist und baut einen schönen
Ladebalken damit der anzeigt wie lange der Transfer bzw. die Verarbeitung noch dauert. Bei Special Files wie
z.b. named Pipes oder einfach nur Device Files wird dies natürlich nicht gehen und man sieht nur einen
Balken der hin und her wandert, wie man es von zahlreichen grafischen Oberflächen gewöhnt ist.
Die andere Variante hängt Inline in der Pipe und zeigt natürlich die gleichen Daten an:
cat dateiname | pv | nc -w 1 serveradresse portnummer
Nachteilig ist natürlich das man hier nicht sieht wie lange der Transfer noch dauert, was logisch ist da
über die Pipes ja keine Größeninformationen ausgetauscht werden. Wenn man natürlich weis welche Datenmenge
übertragen wird kann man das
pv mit auf den Weg geben:
cat dateiname | pv -s 200m | nc -w 1 serveradresse portnummer
Und schon hat man wieder den schönen Ladebalken, wenn man Sachen natürlich zuvor durch ein Kompressionstool
wie gzip,bzip2 oder xz jagt ist der Ladebalken natürlich bestenfalls ein Schätzeisen im Glastkugelmodus.
Es gibt noch einige zusätzliche Schalter in der Manpage von pv, doch die wird man eher
selten benötigen ;-)