如何监控长 运行 命令的进度?
How to monitor progress of a long running command?
我有一个很长的 运行 脚本,它在运行时会输出很多日志行。我的具体任务是计算 50K 文件中的行数,总共 2TB 的数据。但是,这个问题也适用于 运行 长 make 或安装脚本。
如何在一行中显示长 运行 脚本的进度(即重复使用同一行)?
[已编辑]
如果行数足够,并且不需要实际百分比,这个简单的 awk 单行代码就可以了:
awk '{printf "\r%s", NR}'
当 运行 make
时:
make | awk '{printf "\r%s", NR}'
请注意 printf 格式开头的 \r
- 它将插入符号倒回到行的开头,重新使用该行。
我有一个很长的 运行 脚本,它在运行时会输出很多日志行。我的具体任务是计算 50K 文件中的行数,总共 2TB 的数据。但是,这个问题也适用于 运行 长 make 或安装脚本。
如何在一行中显示长 运行 脚本的进度(即重复使用同一行)?
[已编辑]
如果行数足够,并且不需要实际百分比,这个简单的 awk 单行代码就可以了:
awk '{printf "\r%s", NR}'
当 运行 make
时:
make | awk '{printf "\r%s", NR}'
请注意 printf 格式开头的 \r
- 它将插入符号倒回到行的开头,重新使用该行。