我想将所有“set -x”输出注销到我的syslog文件中。 但是,syslog文件有我自己的自定义格式。
但是set -x输出没有格式化。
我该怎么做?
答案 0 :(得分:2)
如果您在Bash源代码中查看print_cmd.c
,您会看到set -x
输出的格式无法配置。
您可以捕获DEBUG
“信号”以实现您自己的自定义日志记录,例如
trap 'logger -p user.debug -t SHELLSCRIPT -- "$BASH_COMMAND" || :' DEBUG
使用工具user
,级别debug
和标记SHELLSCRIPT
将所有命令发送到syslog。