27660 cazuri COVID-19 în Moldova
7515 – cazuri active
19300 – cazuri vindecate
845 – cazuri fatale
Actualizarea datelor: 10 august 2020 ora 07:34


pv: Progress Bar for md5sum et al.


Tools that know they will take a long time often come with a built-in progress indicator, but there are other utilities on Linux that often leave the user frustratedly tapping their fingers, wondering how much longer they will have to wait.

Luckily, there is a nifty little tool called pv that will donate a progress bar to any program that can read from standard input or a pipe. pv probably stands for pipe viewer.

1. Simple example: figure out how long an md5sum will take:

pv eternal.avi |md5sum

will display something like

96.5MB 0:00:05 [25.3MB/s] [=======>                                    ]  9% ETA 0:00:48

Notes:

  • pv reads from file and prints to stdout.
  • md5sum reads from stdin.
  • pv outputs the progress bar to stderr so as not to interfere with the piped data. See the man page for ways to customize pv’s output.
  • since the bottleneck of such an operation is the media you’re reading from, not the CPU, there will be no noticeable overhead.

2. Complex example: add a progress bar to tar/bzip2 compression/decompression:

tar cf - mydir | pv -n -s $(du -sb mydir | awk ‘{print $1}’) | bzip2 >mydir.tar.bz2

Notes:

  • this example is adapted from the pv man page.
  • the -n switch makes pv output only percentage values.
  • no file is passed to pv, so it reads from stdin (piped to the output of tar).
  • on a system with good cache and enough memory, doing the extra du -s mydir shouldn’t hurt much, since tar will go through the entire directory anyway.

Now let’s decompress it:

pv mydir.tar.bz2 |tar xjf -

By now you realize how awesome this is.

3. Fun example: measure /dev/null throughput:

pv /dev/zero >/dev/null

is close to 3.3GB/s on my 3-year-old system.

Notes:

  • this is not a benchmark ™.
  • pv can’t know the size of its input in this case (infinity), so it obviously can’t display an ETA.

pv is a brilliant example of the UNIX philosophy: simple puzzle pieces combining to create useful results. A couple of last-word remarks:

  • There is apparently a very similar tool called cpipe.
  • There are, unfortunately, programs for which you will not be able to use pv. One example is dpkg, which apparently tries seeking in its input, thus failing to work with pipes.
  • Thanks to my boss for pointing me to this awesome tool.
Posted in Linux, Shell, Technology   Tagged: bzip, bzip2, compression, decompression, md5, md5 sum, md5sum, pipe, progress, progress bar, pv, tar, throughput, tool, trick, unzip, zip   

Sursa
2009-02-05 00:00:00



Comenteaza





Ultimele 25 posturi adăugate

03:42:12Căpșunărița —» Viata pe Tinder – Viata amoroasa pe Tinder
21:48:30Politicieni mai vechi, mai noi, aceleași trucuri electorale —» Curaj.TV | Media alternativă
21:44:24Protest la Guvern, oamenii cer dreptate —» Curaj.TV | Media alternativă
16:21:33Unioniștii sînt ultimii bolșevici. —» blog cultural
12:48:39Povestea fenomenală și adevărată a casnicei din Belarus care i-a aruncat mănușa lui Lukașenco și vrea să fie președinte —» Cojocari Vitalie
12:32:18©️ Valoarea cuvintelor —» Licurici de suflet
22:20:05Poliția stă grămadă în intersecție —» Curaj.TV | Media alternativă
18:56:54Șantier ilegal și poluant în sectorul 5 —» Curaj.TV | Media alternativă
18:48:55Despre ultima carte citită - Nașterea unei Mame —» A little web world
13:50:43Se continuă admiterea in clasa 10-a profil umanist ( turul II), anul de studii 2020 – 2021 —» Liceul Teoretic “Mihail Sadoveanu”, Călăraşi
10:03:14Alerte de călătorie în Grecia și Cipru —» Elena Robu
08:45:19Sibiul e cam inaccesibil pe rotile —» Curaj.TV | Media alternativă
05:03:16POETUL, PROZATORUL, EDITORUL MIRCEA CIOBANU AR FI ÎMPLINIT 80 DE ANI —» Leo Butnaru
19:37:54Aleargă 1000 KM spre mare, a ajuns la Sibiu —» Curaj.TV | Media alternativă
19:13:43Primar nervos cu 9500 lei pe lună —» Curaj.TV | Media alternativă
19:07:33Corcoduşe carpatine —» APort | "Pentru un român care știe citi, cel mai greu lucru e să nu scrie." I.L. Carag
13:40:00Salata de pui cu ciuperci marinate —» If You Love Cooking | Retete culinare
11:20:07IPS Athanasie de Limassol: „N-o să fie nimic mai mult și nimic mai puțin decât ceea ce va îngădui Dumnezeu” —» Liturgică şi Misiologie Ortodoxă
09:30:57Defilare secretă de tunuri și camioane militare sovietice —» Curaj.TV | Media alternativă
09:09:36Pregătim împreună tort festiv din clătite de ficat de pui —» Sunt MAMĂ!
08:45:57S-a furișat pînă a văzut camera de supraveghere —» Curaj.TV | Media alternativă
08:17:11Patru noutăți bune de la Carpe Diem —» Fine Wine
08:13:10Mesaj de la o pensionară din Florești : ”Dodon se supune Rusiei, acolo este patria lui” —» Elena Robu
07:15:12Lectură și evoluție sau Super puterea lecturii —» Blog de biblioteconomie şi ştiinţa informării
06:15:00©️ Șanse —» Licurici de suflet