有没有办法在运行 cmp 命令时显示进度?
使用 cmp 比较大文件或分区可能需要一段时间。
我已经在 Google 上搜索并使用了 man cmp,但没有找到任何有用的信息。
例如使用 'dd' 命令执行
kill -USR1 [pid_of_dd]
使 dd 在控制台中输出其状态。
有没有办法让 cmp 做类似的事情?
答案1
您可以使用 PipeViewer 来实现此目的
pv firstfile | cmp -l secondfile > output
答案2
$ cmp -l 第一个文件 第二个文件 & [1]pid_of_cmp $ ls -l /proc/pid_of_cmp/fd/ 低位求和------ 1用户 团体64约会时间0 -> /dev/console 低位求和------ 1用户 团体64约会时间1 -> /dev/console 低位求和------ 1用户 团体64约会时间2-> /dev/console 左-右------ 1用户 团体64约会时间3 -> /路径/到/第一个文件 左-右------ 1用户 团体64约会时间4 -> /路径/到/secondfile $ cat /proc/pid_of_cmp/fdinfo/0 位置: 25952256 标志:0100000 $ cat /proc/pid_of_cmp/fdinfo/1 位置:122650624 标志:0100000
pos
与文件的大小进行比较。