Sunsea's Blog

不积跬步无以至千里

Linux下使用progress显示命令执行进度

Linux下的命令高效简洁,但同时进度显示不是很友好,比如mv、cp、dd等命令。

在没有进度显示的情况下,无法判断是正在执行还是卡死了,还是执行缓慢,progress命令很好的解决了这个问题。

不但能显示常见的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命令的进度,还可以显示rclone、ffmpeg等命令的执行进度情况。

一、安装progress

项目地址:https://github.com/Xfennec/progress

1、安装编译所需依赖

Debian/Ubuntu:apt-get install libncurses5-dev

Centos:yum install ncurses-devel

2、下载源码

git clone https://github.com/Xfennec/progress.git

3、编译安装

cd progress

make && make install

编译完成后即可直接通过progress -h查看帮助。

二、progress使用举例

1、显示默认支持命令的执行进度

单次显示:progress

持续显示:progress -M

2、显示指定命令的执行进度

单次显示:progress -c ffmpeg

持续显示:progress -M -c ffmpeg

ffmpeg换成你想监控的命令即可,可以连续使用多个-c同时监控显示多个命令的执行进度。

3、显示指定pid的执行进度

单次显示:progress -p 进程号

持续显示:progress -M -p 进程号

更多监控显示方案可自行组合发掘。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注