Progress进度查看器是一个简单的程序,可用于显示Coreutils命令的进度。它使用来自文件描述符的信息来确定命令的进度。Progress的优点在于它可以与其他Linux命令一起使用,比如watch。 | 实验环境
安装
Progress工具依赖ncurses库,先安装ncurses-devel然后再编译安装progress [root@localhost ~]# yum -y install ncurses-devel[root@localhost ~]# git clone https://github.com/Xfennec/progress[root@localhost ~]# cd progress/[root@localhost progress]# make && make install运行progress
如果没有命令在运行,那么progress程序将退出并告诉你,没有命令正在运行。 [root@localhost ~]# progressNo command currently running: cp, mv, dd, tar, cat, rsync, grep, fgrep, egrep, cut, sort, md5sum, sha1sum, sha224sum, sha256sum, sha384sum, sha512sum, adb, gzip, gunzip, bzip2, bunzip2, xz, unxz, lzma, unlzma, 7z, 7za, zcat, bzcat, lzcat, split, gpg, or wrong permissions.
使用cp命令复制一个文件,当拷贝一个大文件的时候可以看到进度 [root@localhost ~]# cp -p CentOS-7-x86_64-Minimal-1908.iso /tmp/# 再打开一个终端,输入progress查看任务进度[root@localhost ~]# progress
如果需要知道移动或者复制大文件的剩余时间,可以添加-w选项,隐藏全部消息可以使用-q。 [root@localhost ~]# cp -p CentOS-7-x86_64-Minimal-1908.iso /tmp/# 再打开一个终端,输入progress查看任务进度[root@localhost ~]# progress -wq progress和watch命令一起使用
Watch配合progress命令使用,可以实时显示文件传输的进度: [root@localhost ~]# cp -p CentOS-7-x86_64-Minimal-1908.iso /tmp/# 再打开一个终端,输入progress查看任务进度[root@localhost ~]# watch progress -wq 总结
progress只需扫描/proc以查找感兴趣的命令,然后查看目录fd和fdinfo以查找打开的文件和查找位置,并报告最大文件的状态。 本文原创地址:https://www.linuxprobe.com/linux-progress-tools.html编辑:逄增宝,审核员:逄增宝
|