【发布时间】:2014-07-08 16:29:30
【问题描述】:
我有这个应该登录自定义日志文件的 shell 脚本
#!/bin/bash
LOG=/var/log/Custom/rules.log
logger -f $LOG "found rule --> rule 0f 1"
为什么没有登录到 /var/log/Custom/rules.log 文件?但它会登录到 /var/log/syslog。
请让我知道我的命令有什么问题。
【问题讨论】:
我有这个应该登录自定义日志文件的 shell 脚本
#!/bin/bash
LOG=/var/log/Custom/rules.log
logger -f $LOG "found rule --> rule 0f 1"
为什么没有登录到 /var/log/Custom/rules.log 文件?但它会登录到 /var/log/syslog。
请让我知道我的命令有什么问题。
【问题讨论】:
您可能误解了-f 参数。使用-f 传递的文件将被记录到到 /var/log/syslog,而不是按照手册页的说明记录到到。
-f, --file file 记录指定文件的日志。此选项不能与命令行消息结合使用。
以下示例将使用重定向将您的日志字符串简单地附加到$LOG。
echo "found rule --> rule 0f 1" >> $LOG
# with fancy timestamp:
echo "$(date) $(hostname): found rule --> rule 0f 1" >> $LOG
【讨论】:
logger 根据其手册页,是“syslog(3) 系统日志模块的 shell 命令接口”。它不是一个通用的日志框架。如果要登录到特定文件,请使用输出重定向而不是 logger...