Introduction ************ This is the README for `pv' ("Pipe Viewer"), a terminal-based tool for monitoring the progress of data through a pipeline. It can be inserted into any normal pipeline between two processes to give a visual indication of how quickly data is passing through, how long it has taken, how near to completion it is, and an estimate of how long it will be until completion. Documentation ************* A manual page is included in this distribution. See `man ./doc/quickref.1', or `man pv' after installation. Compilation *********** If you have downloaded `pv' from Subversion, first run "./generate.sh". To compile the package, type "sh ./configure", which should generate a Makefile for your system. You may then type "make" to build everything. Note that GNU `make' is required; this may be installed as `gmake' on some systems, so if typing "make" gives an error, try "gmake" instead. See the file `doc/INSTALL' for more about the `configure' script. Developers note that you can do "./configure --enable-debugging" to cause debugging support to be built in, and "--enable-profiling" builds in profiling support (see "man gprof"). Also note that doing "make index" will generate an HTML code index (using "ctags" and "cproto"); this index lists all files used, all functions defined, and all TODOs marked in the code. Author and acknowledgements *************************** This package is copyright 2015 Andrew Wood, and is being distributed under the terms of the Artistic License 2.0. For more details of this license, see the file `doc/COPYING'. Report bugs in `pv' to pv@ivarch.com or use the contact form linked from the home page. The `pv' home page is at: http://www.ivarch.com/programs/pv.shtml The latest version can always be found here. Credit is also due to: Jakub Hrozek - Fedora package maintainer Antoine Beaupré - Debian package maintainer Kevin Coyner Cédric Delfosse - previous Debian package maintainers Eduardo Aguiar - provided Portuguese (Brazilian) translation Stéphane Lacasse - provided French translation Marcos Kreinacke - provided German translation Bartosz Feñski - provided Polish translation along with Krystian Zubel Joshua Jensen - reported RPM installation bug Boris Folgmann - reported cursor handling bug Mathias Gumz - reported NLS bug Daniel Roethlisberger - submitted patch to use lockfiles for -c if terminal locking fails Adam Buchbinder - lots of help with a Cygwin port of -c Mark Tomich - suggested -B option Gert Menke - reported bug when piping to dd with a large input buffer size Ville Herva - informative bug report about rate limiting performance Elias Pipping - patch to compile properly on Darwin 9; potential NULL deref report Patrick Collison - similar patch for OS X Boris Lohner - reported problem that "-L" does not complain if given non-numeric value Sebastian Kayser - supplied testing for SIGPIPE, demonstrated internationalisation problem Laszlo Ersek - reported shared memory leak on SIGINT with -c Phil Rutschman - provided a patch for fully restoring terminal state on exit Henry Precheur - reporting and suggestions for --rate-limit bug when rate is under 10 E. Rosten - supplied patch for block buffering in line mode Kjetil Torgrim Homme - reported compilation error with default CFLAGS on non-GCC compilers Alexandre de Verteuil - reported bug in OS X build and supplied test environment to fix in Martin Baum - supplied patch to return nonzero exit status if terminated by signal Sam Nelson - supplied patch to fix trailing slash on DESTDIR Daniel Pape - reported Cygwin installation problem due to DESTDIR Philipp Beckers - ported to the Syabas PopcornHour A-100 series Henry Gebhard - supplied patches to improve SI prefixes and add --average-rate Vladimir Kokarev, Alexander Leo - reported that exit status did not reflect file errors Thomas Rachel - submitted patches for IEEE1541 (MiB suffixes), 1+e03 bug Guillaume Marcais - submitted speedup patch for line mode Moritz Barsnick - submitted patch for compile warning in size calculation Pawel Piatek - submitted RPM and patches for AIX Sami Liedes - submitted patch for --timer and --bytes with --numeric Steven Willis - reported problem with "-R" killing non-PV remote processes Vladimir Pal, Vladimir Ermakov - submitted patch which led to development of --format option Peter Samuelson - submitted patch to calculate size if stdout is a block device Miguel Diaz - much Cygwin help (and packaging), found narrow-terminal bug Jim Salter - commissioned work on the --skip-errors option Wouter Pronk - reported build problem on SCO Bryan Dongray - provided patches for test scripts failing on older Red Hats Zev Weiss - provided patch to fix splice() not using stdin Zing Shishak - provided patch for --null / -0 (count null terminated lines) Jacek Wielemborek - implemented fdwatch in Python, suggested PV port - reported bug with "-l" and ETA / size - suggested common switches Kim Krecht - suggested buffer fill status and last bytes output display options Cristian Ciupitu , Josh Stone - pointed out file descriptor leak with helpful suggestions (Josh Stone initially noticed the missing close) Jan Seda - found issue with splice() and SPLICE_F_NONBLOCK causing slowdown André Stapf - pointed out formatting problem e.g. 13GB -> 13.1GB which should be shown 13.0GB -> 13.1GB; highlighted on-startup row swapping in -c Damon Harper - suggested "-D" / "--delay-start" option Ganaël Laplanche - provided patch for lstat64 on systems that do not support it Peter Korsgaard - provided similar patch for lstat64, specifically for uClibc support Ralf Ramsauer - reported bug which dropped transfer rate on terminal resize Michiel Van Herwegen - reported and discussed bug with "-l" and ETA / size Erkki Seppälä - provided patch implementing "-I" Eric A. Borisch - provided details of compatibility fix for "%Lu" in watchpid code -----------------------------------------------------------------------------