在Linux服务器上进行备份和复制/移动大文件时,您可能希望监视正在进行的操作的进度。四川联想服务器总代理许多终端工具没有允许您在管道中运行命令时查看进度信息的功能。
在本文中,我们将了解一个重要的 Linux/Unix 命令,称为pv – Pipe Viewer。
Pv是一种基于终端的工具,可让您监控通过管道发送的数据的进度。使用pv命令时,它可以直观地显示以下信息:
①已经过去的时间。②完成百分比包括一个进度条。③显示当前吞吐率。④传输的总数据。⑤ ETA(预计时间)。
如何在 Linux 中安装 pv 命令?
大多数 Linux 发行版默认不安装pv命令,因此您可以按照以下步骤安装它。
一、在基于 RHEL 的 Linux 上安装 pv
首先,您需要打开EPEL 存储库,然后运行以下yum或dnf命令进行安装。
# yum install pv
要么
# dnf install pv
在基于 Debian 的 Linux 上安装 pv
$ sudo apt-get install pv
在其他 Linux 发行版上安装 pv
$ sudo emerge -a pv [在Gentoo Linux 上]
$ sudo apk add pv [在Alpine Linux 上]
$ sudo pacman -S pv [在Arch Linux 上]
$ sudo zypper install pv [在OpenSUSE上]
二、如何在Linux中使用pv命令?
pv主要与其他无法监控正在进行的操作进度的程序一起使用。您可以使用它,将它放在两个进程之间的管道中,并提供适当的选项。
pv的标准输入将传递到它的标准输出,进度(输出)将打印在标准错误上。它与Linux中的cat 命令具有相似的行为。
pv命令的语法如下:
$ pv file
$ pv options file
$ pv file filename.out
$ pv options | command filename.out
$ comand1 | pv | command2
pv使用的选项分为三类,显示开关、输出修饰符和通用选项。
三、Linux服务器上的 pv 命令示例
1.当不包含任何选项时,pv命令使用默认-p的 、-t、-e、-r、-b选项运行。
例如,要将opensuse.vdi文件复制到/tmp/opensuse.vdi,请运行此命令,观察进度条。
# pv opensuse.vdi /tmp/opensuse.vdi
2.要从 /var/log/syslog 文件制作一个 zip 文件,请运行以下命令。
# pv /var/log/syslog | zip syslog.zip
3.要在仅显示进度条的同时统计/etc/hosts文件中的行数、字数和字节数,请运行以下命令。
# pv -p /etc/hosts | wc
4.使用tar 实用程序监控创建备份文件的进度。
# tar -czf - ./Downloads/ | (pv -p --timer --rate --bytes backup.tgz)
5、示例中我们使用dd命令将ISO文件写入U盘:
# dd if=debian-10.11.0-amd64-DVD-1.iso | pv | dd of=/dev/sda bs=4M
6 、使用pv和dialog终端工具一起创建对话进度条如下。
# tar -czf - ./Documents/ | (pv -n backup.tgz) 21 | dialog --gauge Progress 10 70
这是一个很好的基于终端的工具,您可以将其与不具备此功能的工具一起使用,以监视处理/移动/备份文件等操作的进度,有关更多选项,请检查man pv。
成都联想服务器代理【公司名称】成都鸿盛广达科技有限公司
【代理级别】成都联想服务器总代理
【销售经理】成都鸿盛广达科技有限公司
【联系方式】座机:028-85952921 手机:13981931555
【公司地址】成都市武侯区人民南路四段一号时代数码广场A座17楼