我知道在Linux中,要将屏幕输出重定向到文件,可以使用>或tee。然而,我不确定为什么部分输出仍然输出到屏幕而没有写入文件。
是否有方法将所有输出重定向到文件?
我知道在Linux中,要将屏幕输出重定向到文件,可以使用>或tee。然而,我不确定为什么部分输出仍然输出到屏幕而没有写入文件。
是否有方法将所有输出重定向到文件?
当前回答
您可以稍后使用exec命令重定向任何命令的所有stdout/stderr输出。
示例脚本:
exec 2> your_file2 > your_file1
your other commands.....
其他回答
命令:
foo >> output.txt 2>&1
附加到output.txt文件,而不替换内容。
使用>>附加:
命令>>文件
这可能是标准错误。您可以重定向它:
... > out.txt 2>&1
您可以稍后使用exec命令重定向任何命令的所有stdout/stderr输出。
示例脚本:
exec 2> your_file2 > your_file1
your other commands.....
感谢osexp2003和j.a…
而不是:
&>> your_file.log
在以下行后面:
crontab -e
我使用:
#!/bin/bash
exec &>> your_file.log
…
在BASH脚本的开头。
优点:脚本中有日志定义。有利于Git等。