问题
在 Linux/Unix 类系统中,dd
命令是一个非常实用的工具,它可以用来复制文件、磁盘、分区等。但是,当dd
命令在运行时,它不会显示任何进度信息,这可能会让你感到焦虑和困惑:到底 dd 了多少啊啊啊啊啊。那么,有没有办法让dd
命令在运行时显示进度呢?
解决方案
dd 命令加上 status=progress 参数
在 GNU Coreutils
8.24
版本之后,dd
命令增加了一个status=progress
参数,可以用来显示进度信息。你可以像下面这样使用它:
|
|
status=progress
参数会让dd
命令显示进度信息,如图
使用 kill 命令
如果你只是想查看dd
命令的进度信息,也可以使用kill
命令来实现。你可以像下面这样使用它,我们做一个小实验:
|
|
在这个示例中,我们使用dd
命令从/dev/zero
设备读取数据,并将其写入/dev/null
设备。然后,我们使用kill
命令每隔 1 秒输出dd
命令的进度信息。
这种方法可以在不安装额外软件的情况下实现显示进度信息的功能,毕竟kill
命令是 Linux 系统自带的工具,同时,这个也适用于最开始执行dd
后忘记加status=progress
参数时,可以用这种方法补救。
总结
以上就是在 Linux/Unix 系统中使用dd
命令显示进度信息的两种常用方法。你可以根据自己的需求选择合适的方法。