gpt4 book ai didi

linux - 我如何在 CentOS 6.X 中使用带有 tee 的记录器

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:27:17 25 4
gpt4 key购买 nike

我尝试使用这些命令来测试我的 shell 脚本:

logger "hello i am fun" | tee -a test 

但是测试文件还是空的。我也尝试过使用 echo

echo "hello i am fun" |tee -a test >logger

写入测试文件也失败了。如何将记录器与 tee -a 一起使用?

最佳答案

logger 有一个 -s 标志:

-s Output the message to standard error as well as to the system log.

来源:LOGGER(1) Man Pages

您可以使用 -s 将消息记录到标准错误。然后将 stderr 重定向到 stdout,然后将 stdout 重定向到 /dev/null。将整个内容通过管道传输到 tee,您最终会在系统日志中看到您的消息以及您在 tee 中指定的路径。

例子:

joeyoung$ logger -s -p local0.notice -t TEST "test message" 2>&1 >/dev/null |  tee -a /tmp/teetemp.log
Oct 3 11:11:54 localhost TEST[4231] <Notice>: test message
joeyoung$ tail -n1 /var/log/messages
Oct 3 11:11:54 localhost TEST[4231]: test message
joeyoung$ cat /tmp/teetemp.log
Oct 3 11:11:54 localhost TEST[4231] <Notice>: test message

为了正确归因,一些灵感来自:https://stackoverflow.com/a/2342841/2744166

关于linux - 我如何在 CentOS 6.X 中使用带有 tee 的记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32827987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com