linux - 如何监控长时间运行的命令的进度?

标签 linux bash awk makefile

我有一个长时间运行的脚本,它在运行时会输出很多日志行。我的具体任务是计算 50K 文件中的行数,总共 2TB 的数据。但是,该问题也适用于运行较长的 make 或安装脚本。

如何在一行中显示长时间运行的脚本的进度(即重复使用同一行)?

最佳答案

[已编辑]

如果行数足够,并且您不需要实际百分比,这个简单的 awk 单行代码就可以解决问题:

awk '{printf "\r%s", NR}'

当运行 make 时,它将是:

make | awk '{printf "\r%s", NR}'

请注意 printf 格式开头的 \r - 它将插入符号倒回到行的开头,重新使用该行。

关于linux - 如何监控长时间运行的命令的进度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28723039/

相关文章:

linux - linux中o+t的number权限是多少

linux - 转储失败,因为无法加载 Assets

linux - 修剪 bash/sed 中的输入

linux - 检查 bash 脚本上的 AWS cli 版本

bash - shell : Get a specific word under a sub section in yaml file

c++ - 如何使用FAN_DENY? (法诺菲)

linux - 提取模式的最快方法

c++ - Linux 如何知道进程使用了​​多少物理内存?

date - awk:防止结果被解释为 shell 命令

sed - 修剪第 n 列 unix 的末尾