BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanneKontakt

Fortschritt einer Pipe beobachten

Mit Hilfe von pv kann der Durchsatz und die Menge der gesendeten Daten durch eine Pipe beobachtet werden. pv findet man in den FreeBSD Ports unter sysutils/pv.

cd /usr/ports/sysutils/pv && make install clean

Nun kann pv vor der zu beobachtenden Pipe aufgerufen werden. Es wird angezeigt, wie viele Daten bereits durch die Pipe gesendet wurden, die verstrichene Bearbeitungszeit und der Durchsatz durch die Pipe:

# dd if=/dev/acd0 bs=2048 | pv | gzip > test.iso.gz
93.6MB 0:00:55 [1.92MB/s] [ <=> ]

Falls möglich, versucht pv die verbleibende Dauer zu errechnen. Ist das nicht möglich, kann bei pv mit der -s Option die Datenmenge angegeben werden, die durch die Pipe gesendet wird und nun kann pv die verbleibende Dauer berechnen.

# dd if=/dev/acd0 bs=2048 | pv -s 130m | gzip > test.iso.gz
11.5MB 0:00:22 [ 603kB/s] [====> ] 8% ETA 0:03:46

Sollen mehrere Pipes beobachtet werden, kann pv zusammen mit -cN und dem Namen des Programmes, zu welchem die Daten durch die Pipe gelenkt werden, verwendet werden:

# bzcat test.bz2 | grep NULL | pv -cN grep | awk '{print $1}' | pv -cN awk > test
grep: 56.9MB 0:00:08 [7.69MB/s] [ <=> ]
awk: 2.82MB 0:00:08 [ 361kB/s] [ <=> ]

Mehr Informationen zu pv findet man in der Manpage pv(1).

Comments (0)  Permalink

Comments

add a comment

The Trackback URL to this post is:
http://www.chruetertee.ch/blog/plugin=trackback(1022).xml
Trackbacks are moderated.

This blog is gravatar enabled.
Your email adress will never be published.
Comment spam will be deleted!

Name*
E-Mail
For Spammers Only
URL
Comment*
Notify me via E-Mail when new comments are made to this entry
Remember me (needs cookies)