pv
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 20.04 Focal Fossa
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
pv 🇬🇧 (pipe viewer) ermöglicht es, den Fortschritt einer Aktion oder Aufgabe durch eine sog. "Pipe" zu überwachen. Details zu dieser Methode, die Ausgabe des einen Programms als Eingabe eines anderen Programms zu verwenden, sind dem Artikel Shell/Umleitungen (Abschnitt „Der-Pipe-Operator“) entnehmen.
Installation¶
Es muss das folgende Paket installiert [1] werden:
pv (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install pv
Aufruf¶
pv wird über den gleichnamigen Befehl im Terminal [2] aufgerufen:
pv [OPTIONEN]
Beispielausgabe:
24.2GB 0:44:21 [4.45MB/s] [=============> ] 40% ETA 1:05:38
ETA zeigt dabei die verbleibende Zeit an, bis die Operation (bei aktueller Geschwindigkeit) voraussichtlich fertig sein wird.
Optionen¶
Die folgende Liste ist unvollständig und listet nur ein paar aber häufig verwendete Optionen auf. Eine vollständige Liste der Parameter kann über die Manpage angesehen werden.
Anzeigeoptionen | |
Parameter | Funktion |
-p , --progress | Zeigt einen Fortschrittsbalken an |
-t , --timer | Zeigt die vergangene Zeit an |
-e , --ETA | Geschätzte verbleibende Zeit |
-r , --rate | Durchsatzrate anzeigen |
-a , --average | Durchschnittliche Rateanzeige |
-n , --numeric | Zeigt numerische Werte anstelle des Fortschrittsbalken an |
-W , --wait | Wartezeit bevor pv Statistiken anzeigt |
-i SEKUNDEN , --interval SEKUNDEN | Aktualisierungsintervall |
Transfermanipulationsoptionen | |
Parameter | Funktion |
-L RATE , --rate-limit RATE | Durchsatz festlegen |
-B ZAHL , --buffer-size ZAHL | Puffergröße in Byte definieren |
-s ZAHL , --size ZAHL | Größe in Bytes für Fortschritts- bzw. ETA-Berechnung |
-S , --stop-at-size | Stoppt Schreibvorgang bei Erreichen des Limits, z.B. der Partitionsgröße (erst ab Ubuntu 14.10) |
Beispiele¶
Folgende Beispiele sollen die Funktionalität von pv demonstrieren.
Eine Datei kopieren (mit Fortschrittsanzeige):
pv QUELLDATEI > ZIELDATEI
Mit dd aus
/dev/urandom
lesen und nach/dev/null
schreiben. Dabei werden 1000 MiB als 100% definiert:dd if=/dev/urandom bs=1M count=1000 | pv -petra -s 1000m > /dev/null
Die Gerätedatei
/dev/zero
verwenden, um einen Datenträger mit Nullen zu überschreiben:pv < /dev/zero > /dev/sdx
pv übergibt eine 2 GiB große Datei wichtiges_backup.img an dd, das diese auf das (nicht-existente) Gerät "festplatte" schreibt:
dd if=/media/externe_festplatte/wichtige_backup.img | pv -s 2g | dd of=/dev/festplatte
Öffne eine Datei mit cat und leite sie durch pv, wobei umfassende Statistiken erstellt werden. Von dort wird an netcat (nc) übergeben, dass die Datei an ein System (Host) auf Port
7345
sendet:cat datei | pv -petra | nc ubuntuusers.de 7345
Links¶
Projektseite 🇬🇧
Manual 🇬🇧 - Dokumentation
dd mit Statusanzeige 🇩🇪 - Blogbeitrag, beschreibt den Einsatz der pv-Alternative buffer, 01/2007
bar - weitere Alternative zu pv
Shell/Befehlsübersicht Übersicht über verschiedene Shell-Befehle