Het programma pv (pipe viewer) kan zich tussen elke pipe nestelen en toont dan informatie over de voortgang van de gegevens die erdoor vliegen. Er zijn immers maar weinig programma's uit de klassieke Linux-toolbox die een voortgangsindicator tonen. Denk bijvoorbeeld aan dd om disk images te maken of netcat, het Zwitsers zakmes voor netwerktaken. Met cat file.iso | nc -l 1234 stuur je een groot bestand via netcat over poort 1234, en op een andere computer ontvang je dit bestand met nc hostname 1234 > file.iso. Maar op geen van beide machines krijg je te zien hoe snel het bestand wordt doorgestuurd en wanneer de overdracht voltooid zal zijn.

Met pv naast de pipe krijg je wel een voortgangsindicator te zien. Dat gaat dan als volgt:

$ pv file.iso | nc -l 1234

en:

$ nc hostname 1234 | pv > file.iso

Standaard toont pv heel wat informatie: hoeveel megabytes er al verzonden zijn, hoe snel de gegevens door de pipe gaan, hoe lang de gegevensoverdracht al duurt, hoeveel procent van de gegevensoverdracht al gebeurd is, en een schatting van de tijd tot voltooiing. Als u enkel één van deze indicatoren wil zien, kan dat met de opties -b, -r, -t, -p respectievelijk -e.

Gebruikt u een complexere aaneenschakeling van pipes, dan kunt u ook meerdere keren pv gebruiken, bijvoorbeeld als u wil meten hoe snel een bestand van uw schijf gelezen wordt en hoe snel dit gecomprimeerd wordt. Hiervoor moet u dan wel telkens de optie -cN gebruiken met een naam, zodat de gegevens van elke pipe viewer op een regel getoond worden met de naam van het programma erbij. Een voorbeeld:

$ pv -cN disk file.iso | bzip2 | pv -cN bzip2 > file.iso.bz2

Voor bestanden kent pv de totale grootte en kan het dus een percentage berekenen, maar in gevallen dat pv dat niet kan, kunt u zelf de totale hoeveelheid gegevens opgeven met de optie -s. Met de suffixen k, m, g of t geeft u de grootte aan in kilobytes, megabytes, gigabytes of terabytes. Bekijk voor deze en nog andere opties de man-pagina van pv.