Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Linux中,将每个带有时间戳的命令的输出存储在一个文件中_Linux_Bash - Fatal编程技术网

在Linux中,将每个带有时间戳的命令的输出存储在一个文件中

在Linux中,将每个带有时间戳的命令的输出存储在一个文件中,linux,bash,Linux,Bash,有没有办法将每个命令的输出存储在带有时间戳的日志文件中? 我试过这个脚本,但没有效果 mkdir /home/my_name/demo |& tee /home/my_name/My_log.log mkdir没有输出,因此您不会看到任何输出。另外,您需要使用ts来获取时间戳 echo hello | ts '[%Y-%m-%d %H:%M:%S]' | tee ~/my_name/My_log.log ts可能未安装在您的系统上,但可以在软件包moreutils中找到 如果要记录

有没有办法将每个命令的输出存储在带有时间戳的日志文件中? 我试过这个脚本,但没有效果

mkdir /home/my_name/demo |&  tee /home/my_name/My_log.log

mkdir
没有输出,因此您不会看到任何输出。另外,您需要使用
ts
来获取时间戳

echo hello | ts '[%Y-%m-%d %H:%M:%S]' | tee ~/my_name/My_log.log
ts
可能未安装在您的系统上,但可以在软件包
moreutils
中找到

如果要记录多个命令,可以将它们放在脚本中,然后通过上面的管道将脚本输出:

myscript | ts '[%Y-%m-%d %H:%M:%S]' | tee ~/my_name/My_log.log

mkdir
没有输出,因此您不会看到任何输出。另外,您需要使用
ts
来获取时间戳

echo hello | ts '[%Y-%m-%d %H:%M:%S]' | tee ~/my_name/My_log.log
ts
可能未安装在您的系统上,但可以在软件包
moreutils
中找到

如果要记录多个命令,可以将它们放在脚本中,然后通过上面的管道将脚本输出:

myscript | ts '[%Y-%m-%d %H:%M:%S]' | tee ~/my_name/My_log.log

使用>>运算符将输出写入文件。也可以使用tee命令。唯一的区别是>>不将输出写入标准输出

让您的脚本或命令执行如下操作:

customScript | ts -r '[%Y-%m-%d %H:%M:%S]' | tee -a /home/my_name/My_log.log


使用>>运算符将输出写入文件。也可以使用tee命令。唯一的区别是>>不将输出写入标准输出

让您的脚本或命令执行如下操作:

customScript | ts -r '[%Y-%m-%d %H:%M:%S]' | tee -a /home/my_name/My_log.log


谢谢你的回答,让我试试这个……我会尽快更新你的。它可以很好地使用echo命令,但它也会在终端上显示我不想显示的输出[root@TAG用户]#/测试输出到日志执行触摸命令[2018-04-26 03:42:27]你好完成
ts'[%F%T]“
可能会简单一点。。。(为什么要尝试执行日志文件??
。/test\u output\u to\u log
?)@RobinGreen-您可能想提到
ts
命令是由Linux上的
moreutils
软件包提供的——它与
openssl ts
命令不同。谢谢您的回答,让我试试这个……我会尽快更新您它与echo命令配合使用效果很好,但它也会在终端上显示我不想显示的输出 [root@TAG用户]#/测试输出到日志执行触摸命令[2018-04-26 03:42:27]hello已完成
ts'[%F%T]'
可能更容易一些。。。(为什么要执行日志文件?)@RobinGreen-您可能需要提到的是
ts
命令是由Linux上的
moreutils
包提供的,它与
openssl ts
命令不同。我已经试过了您的答案,实际上它完全符合我的要求。感谢you@Pasha很高兴听到这有帮助。如果你认为你的问题已经解决了,请接受这个答案。我已经试过你的答案了,事实上它正是我想要的。感谢you@Pasha很高兴听到这有帮助。如果你认为你的问题已经解决了,请接受答案。