我在脚本中使用以下选项在终端以及 /var/log/messages 上打印
echo "System Load is OK : $Current_loadadv"
echo "System Load is OK : $Current_loadadv" | logger
Run Code Online (Sandbox Code Playgroud)
但我怎么能在单行中做到这一点?
tee >(logger) <<< "System Load is OK : $Current_loadadv"
Run Code Online (Sandbox Code Playgroud)
>(logger)是 bash 语法,用于创建将进入 FIFO 的文件描述符,然后将其提供给标准输入logger(这是 bash 中称为“进程替换”的一种形式)。然后它将该文件描述符的路径作为参数传递回tee,并且由于tee写入其非选项参数,FD 被写入并logger接收您的字符串。