我有一个小脚本,可以将 ttyUSB 的输出转换为一个文件,我想在每一行前加上一个时间戳。从命令行这做我想做的一切:
$ cat /dev/ttyUSB0 /home/pi/daily_logs/ttyUSSB0 | awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; }
我的问题是,当我将它添加到脚本时,一切正常,但未添加 awk 时间戳。我的脚本行如下所示:
cat < /dev/ttyUSB0 > /home/pi/daily_logs/ttyUSB0 | awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; } &
如能提供帮助,我们将不胜感激。
最佳答案
您需要将 awk 的输出重定向到文件,而不是 cat 的。按照你的方式,awk 什么也得不到。实际上,you may not need cat at all :
awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; }' /dev/ttyUSB0 > /home/pi/daily_logs/ttyUSB0 &
关于linux - 将时间戳添加到 shell 脚本的 cat 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14161552/