如何使dd命令变得冗长? [重复]

Modified on: Sat, 09 Jun 2018 14:09:53 +0800
    

这个问题已经有了答案:

    

    

我想通过克隆图像使USB可启动。我做了一些研究,但我没有找到令人满意的方法让dd向控制台提供一些反馈,告诉他们进展如何。

除了通过ps命令轮询PID之外,还有一种内置于命令中的方法吗?

作者:sbrown

最佳答案

如果您阅读man dd,它会引用您info coreutils 'dd invocation',其中部分地说

向正在运行的INFO进程发送dd信号使其打印
I / O统计到标准错误,然后恢复复制。在里面
在下面的示例中,dd在后台运行以复制1000万个块。
kill命令使其输出中间I / O统计信息,并且
dd正常完成或被SIGINT信号杀死时,它
输出最终统计数据。

 $ dd if=/dev/zero of=/dev/null count=10MB & pid=$!
 $ kill -s INFO $pid; wait $pid
 3385223+0 records in
 3385223+0 records out
 1733234176 bytes (1.7 GB) copied, 6.42173 seconds, 270 MB/s
 10000000+0 records in
 10000000+0 records out
 5120000000 bytes (5.1 GB) copied, 18.913 seconds, 271 MB/s

在缺少INFO信号dd的系统上响应USR1
而不是信号,除非POSIXLY_CORRECT环境变量是
集。

您还可以尝试status=progress option

[~]$ dd if=/dev/zero of=/dev/null count=10MB status=progress
4708234752 bytes (4.7 GB, 4.4 GiB) copied, 4 s, 1.2 GB/s
10000000+0 records in
10000000+0 records out
5120000000 bytes (5.1 GB, 4.8 GiB) copied, 4.3516 s, 1.2 GB/s
[~]$ 

相关问答

添加新评论