Linux显示dd命令进度

今天要用dd命令制作ISO文件,4.7GB的光盘,容量有点大。大家都知道linux下执行命令有很少支持显示进度的。为了能更好的看到命令执行情况,最好能显示dd的进度。网上的资料不少,这里就直接复制粘贴了。

[root@dsj-sjk2 ~]# dd if=/dev/cdrom of=NeoKylin_Linux_6.6.iso

执行dd后,需要在另一个shell里再执行显示进度的命令。

第一种方式:每5秒显示进度,本人在redhat6.6下亲测确实可以用。

watch -n 5 pkill -USR1 ^dd$

第二种方式:

watch -n 5 killall -USR1 dd

第三种方式:

while killall -USR1 dd; do sleep 5; done

第四种方式:

while (ps auxww |grep " dd " |grep -v grep |awk '{print $2}' |while read pid; do kill -USR1 $pid; done) ; do sleep 5; done

 

上述四种方法中使用三个命令:pkill、killall、kill向dd命令发送SIGUSR1信息,dd命令进程接收到信号之后就打印出自己当前的进度。

posted on 2017-08-30 18:24  blackangeldsf  阅读(1003)  评论(0编辑  收藏  举报

导航