Votre société de services en logiciels libres

Surveiller la progression d’un transfert de données avec pv

21 avril 2017   

Un article paru sur le site ostechnix.com nous a fait découvrir une nouvelle commande : pv (pour pipe viewer) ! Cette commande permet de suivre la progression d’un transfert de données à travers des « pipes » ou des redirections d’entrée-sortie. Elle est « multi-usage » car elle peut travailler à partir d’un fichier ou bien directement sur STDIN et STDOUT.

Mais, vite, quelques exemples :

1) pour comprendre ce que peut faire pv, testons une copie de fichier réalisée ainsi :

$ pv grosfichier > copie
 97,7MO 0:00:00 [0,992GO/s] [======================>] 100%

2) si la copie s’est réalisée de manière trop rapide, vous pouvez demander à pv de faire des transférer par taille de blocs (ici: 500 Kio) :

$ pv -L 500k grosfichier > copie
 5,86MO 0:00:12 [ 503kO/s] [==>                     ] 11% ETA 0:02:57

3) exemples d’utilisations lors de la création d’archives :

$ tar c Notebooks/ | pv | tar x -C Documents/
$ pv CentOS7.iso | zip > centos.zip
$ dd if=CentOS7.iso | pv | dd of=Downloads/centos7.iso
$ tar -czf - Official/ | (pv -n > mybackup.tgz) 2>&1 | dialog --gauge "Compressing files, please wait..." 10 70 0