有许多程序(例如,moreutils中的ts)和各种bash单行程序,用于在命令/管道的输出前加上该行“打印”时的时间戳.
但是,是否有一个命令,对于它获得的每一行,它将打印自命令启动以来(和/或第一次看到一行时)和当前行的时间?因此,不是打印当前时间,它将打印该命令启动多长时间? (以及线路以及)
当运行需要一段时间的命令并且输出大量输出时,知道你看多久它会很有帮助.
鞭打一个简单的命令是微不足道的,但我不想重新发明轮子.
这是在Ubuntu Linux系统上.
这是一种方式:
#!/bin/bash SECONDS=0 # it will already be initialized to zero at the start of the script while read -r line do echo "$SECONDS: $line" done < file # or < <(command)
SECONDS是一个每秒自动递增的变量.