📅  最后修改于: 2023-12-03 14:50:51.583000             🧑  作者: Mango
在编写 bash 脚本时,有时候可能需要记录脚本的输出,以便后续分析或排错。下面介绍几种在 bash 脚本中记录输出的方法:
使用 >
或 >>
可以将命令的输出重定向到一个文件中。>
表示覆盖文件内容,>>
表示追加到文件末尾。
# 将命令的输出覆盖到文件中
command > output.txt
# 将命令的输出追加到文件末尾
command >> output.txt
tee 命令可以将数据从标准输入复制到标准输出,并可以将数据输出到一个文件中。使用 tee 命令可以将命令的输出同时输出到终端和文件中。
# 将命令的输出输出到终端和文件中
command | tee output.txt
使用 exec 命令可以重定向脚本中所有命令的输出,这种方法适用于需要记录脚本中所有命令的输出的情况。
#!/bin/bash
# 将所有输出重定向到文件中
exec > output.txt 2>&1
# 脚本的命令
command1
command2
...
logger 命令可以将消息记录到系统日志中。可以将脚本中的输出使用 logger 命令记录到系统日志中。
#!/bin/bash
# 记录输出到系统日志中
command1 | logger -t script-name
command2 | logger -t script-name
...
以上介绍了几种在 bash 脚本中记录输出的方法,可以根据具体情况选择使用。