aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlukem <lukem@NetBSD.org>2004-04-03 06:19:22 +0000
committerlukem <lukem@NetBSD.org>2004-04-03 06:19:22 +0000
commita8edcff75598aec0dbe14c2054d0381918877049 (patch)
tree2c11352b2855efdabb3ee7cc5f7ae08af8e44aae
parent369a20cb99bc40983a3528a47914c7253e97dbed (diff)
downloadbsd-progress-a8edcff75598aec0dbe14c2054d0381918877049.tar.gz
bsd-progress-a8edcff75598aec0dbe14c2054d0381918877049.tar.zst
bsd-progress-a8edcff75598aec0dbe14c2054d0381918877049.zip
Support strsuftoll(3) suffixes for '-l length'.
Provide an example of copying raw disks using dd, with a progress bar.
-rw-r--r--progress.127
-rw-r--r--progress.c7
2 files changed, 25 insertions, 9 deletions
diff --git a/progress.1 b/progress.1
index 8b36f98..6ed316f 100644
--- a/progress.1
+++ b/progress.1
@@ -1,6 +1,6 @@
-.\" $NetBSD: progress.1,v 1.8 2004/03/25 20:29:51 hubertf Exp $
+.\" $NetBSD: progress.1,v 1.9 2004/04/03 06:19:22 lukem Exp $
.\"
-.\" Copyright (c) 2003 The NetBSD Foundation, Inc.
+.\" Copyright (c) 2003,2004 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" This code is derived from software contributed to The NetBSD Foundation
@@ -30,7 +30,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd March 5, 2004
+.Dd April 3, 2004
.Dt PROGRESS 1
.Os
.Sh NAME
@@ -73,6 +73,9 @@ instead of standard input.
Use the specified length for the time estimate, rather than attempting to
.Xr fstat 2
the input.
+An optional suffix (per
+.Xr strsuftoll 3 )
+may be given.
.It Fl p Ar prefix
Print the given
.Dq prefix
@@ -90,7 +93,7 @@ is specified, calculate the length using
exits 0 on success.
.Sh EXAMPLES
The command
-.Ic progress -zf file.tar.gz tar xf -
+.Dl progress -zf file.tar.gz tar xf -
will extract the
.Pa file.tar.gz
displaying the progress bar as time passes:
@@ -103,10 +106,22 @@ displaying the progress bar as time passes:
.Pp
If it is preferred to monitor the progress of the decompression
process (unlikely), then
-.Ic progress -f file.tar.gz tar zxf -
+.Dl progress -f file.tar.gz tar zxf -
could be used.
+.Pp
+The command
+.Dl dd if=/dev/rwd0d ibs=64k | \e
+.Dl progress -l 120g dd of=/dev/rwd1d obs=64k
+will copy the 120 GB disk
+.Sy wd0
+.Pa ( /dev/rwd0d )
+to
+.Sy wd1
+.Pa ( /dev/rwd1d ) ,
+displaying a progress bar during the operation.
.Sh SEE ALSO
-.Xr ftp 1
+.Xr ftp 1 ,
+.Xr strsuftoll 3
.Sh HISTORY
.Nm
first appeared in
diff --git a/progress.c b/progress.c
index eaa3314..d08c5d4 100644
--- a/progress.c
+++ b/progress.c
@@ -1,4 +1,4 @@
-/* $NetBSD: progress.c,v 1.8 2004/03/09 17:04:24 hubertf Exp $ */
+/* $NetBSD: progress.c,v 1.9 2004/04/03 06:19:22 lukem Exp $ */
/*-
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: progress.c,v 1.8 2004/03/09 17:04:24 hubertf Exp $");
+__RCSID("$NetBSD: progress.c,v 1.9 2004/04/03 06:19:22 lukem Exp $");
#endif /* not lint */
#include <sys/types.h>
@@ -105,7 +105,8 @@ main(int argc, char *argv[])
break;
case 'l':
lflag++;
- filesize = strtoull(optarg, NULL, 0);
+ filesize = strsuftoll("input size", optarg, 0,
+ LLONG_MAX);
break;
case 'p':
prefix = optarg;