NAME
progress
- feed input to a command, displaying a progress bar
SYNOPSIS
progress
[-ez]
[-b buffersize]
[-f file]
[-l length]
[-p prefix]
cmd
[args ...]
DESCRIPTION
The
progress
utility opens a pipe to
cmd
and feeds an input stream into it, while displaying a progress bar to
standard output.
If no filename is specified,
progress
reads from standard input.
Where feasible,
progress
fstat(2)s
the input to determine the length, so a time estimate can be calculated.
If no length is specified or determined,
progress
simply displays a count of the data and the data rate.
The options are as follows:
- -b buffersize
-
Read in buffers of the specified size (default 64k).
An optional suffix (per
strsuftoll(3))
may be given.
- -e
-
Display progress to standard error instead of standard output.
- -f file
-
Read from the specified
file
instead of standard input.
- -l length
-
Use the specified length for the time estimate, rather than attempting to
fstat(2)
the input.
An optional suffix (per
strsuftoll(3))
may be given.
- -p prefix
-
Print the given
``prefix''
text before (left of) the progress bar.
- -z
-
Filter the input through
gunzip(1).
If
-f
is specified, calculate the length using
gzip -l.
EXIT STATUS
progress
exits 0 on success.
EXAMPLES
The command
progress
-zf
file.tar.gz
tar
xf
-
will extract the
file.tar.gz
displaying the progress bar as time passes:
0% | | 0 0.00 KiB/s --:-- ETA
40% |******** | 273 KiB 271.95 KiB/s 00:01 ETA
81% |*********************** | 553 KiB 274.61 KiB/s 00:00 ETA
100% |*******************************| 680 KiB 264.59 KiB/s 00:00 ETA
If it is preferred to monitor the progress of the decompression
process (unlikely), then
progress
-f
file.tar.gz
tar
zxf
-
could be used.
The command
dd
if=/dev/rwd0d
ibs=64k
|
\
progress
-l
120g
dd
of=/dev/rwd1d
obs=64k
will copy the 120 GiB disk
wd0
(/dev/rwd0d
)
to
wd1
(/dev/rwd1d
),
displaying a progress bar during the operation.
SEE ALSO
ftp(1),
strsuftoll(3)
HISTORY
progress
first appeared in
NetBSD1.6.1.
The dynamic progress bar display code is part of
ftp(1).
AUTHORS
progress
was written by
John Hawkinson
<jhawk@NetBSD.org>.
ftp(1)'s
dynamic progress bar was written by Luke Mewburn.
BUGS
Since the progress bar is displayed asynchronously, it may be
difficult to read some error messages, both those produced by the
pipeline, as well as those produced by
progress
itself.