pv flags & options
Basic usage
Show a progress bar for data piped through.
pv file.iso > /dev/null
With pipes
Insert pv into any pipeline to monitor throughput.
cat backup.sql | pv | mysql dbname
gzip -dc dump.sql.gz | pv | mysql dbname
-s, --size
Specify expected total size for accurate ETA and percentage.
pv -s 4G /dev/sda > disk.img
-L, --rate-limit
Limit the transfer rate.
pv -L 10M bigfile.tar > /dev/sdb
-p, -t, -e, -r
Toggle progress bar, timer, ETA, and rate display individually.
pv -pet file.iso > /dev/null
-N, --name
Add a label prefix to the progress display.
pv -N "Copying" file.iso > copy.iso
Multiple progress bars
Use -N with multiple pv instances in a pipeline.
pv -N "Read" input.gz | gunzip | pv -N "Write" > output.bin
-q, --quiet
Suppress output — useful when only using rate limiting.
pv -qL 1M data.bin | nc target 9000