systemd-cat 中文手册
名称
systemd-cat — 通向系统日志的管道
大纲
systemd-cat [OPTIONS...] [COMMAND] [ARGUMENTS...]
systemd-cat [OPTIONS...]
描述
systemd-cat 可以将标准输入重定向到系统日志中,也可以将进程的标准输出与标准错误重定向到系统日志中,还可以用作管道过滤器,将捕获的其他进程的标准输出重定向到系统日志中。
如果未指定任何 [COMMAND] 参数,那么 systemd-cat将会把它从标准输入读取到的所有内容重定向到系统日志中。
如果传递了 [COMMAND] 参数,那么将会把 [COMMAND]进程的标准输出与标准错误重定向到系统日志中。
选项
能够识别的命令行选项如下:
-h
,--help
显示简短的帮助信息并退出。
--version
显示简短的版本信息并退出。
-t
,--identifier=
设置一个短字符串,用作日志的来源标志。默认值是"unknown"。
-p
,--priority=
指定日志消息的默认日志等级。可设为 "
emerg
", "alert
", "crit
", "err
", "warning
", "notice
", "info
", "debug
" 之一,或者与上述日志等级对应的 0 到 7 之间的整数。详见 syslog(3) 手册。默认值是 "info
" 等级。注意,此选项仅设置默认的日志等级,通过开启--level-prefix=
选项,某些特定的行可以使用不同的日志等级。--stderr-priority=
进程发送到标准错误(stderr)的消息的 默认日志等级。此选项的用法与上文的
--priority=
选项相同。当与--priority=
一起使用时,--priority=
将只作用于标准输出(stdout)。如果未使用此选项,那么来自标准错误(stderr)的消息仍将被记录,但其日志等级将与标准输出(stdout)相同。
当标准输出(stdout)与标准错误(stderr)使用相同的默认日志等级时,消息将被严格排序,因为两者都使用同一个通道。当默认日志等级不同时,分别使用两个信道,标准输出(stdout)消息并不会严格按照标准错误(stderr)消息排序 (尽管两者趋向于近似排序)
--level-prefix=
是否解析传统的 syslog 日志等级前缀。必须指定为一个布尔值。默认值"yes"表示遵守传统的 syslog 日志等级前缀习惯。例如,一条以 "
<5>
" 开头的日志 表示其日志等级为 5("notice
")。其他以此类推。
退出状态
返回值为 0 表示成功,非零返回值表示失败代码。
例子
例 1. 调用一个程序
调用 /bin/ls
程序,并将其标准输出与标准错误重定向到系统日志中。
# systemd-cat ls
例 2. 用作一个管道
接收/bin/ls
的标准输出,并将其重定向到系统日志中。
# ls | systemd-cat
虽然上述两个例子的最终效果差不多,但是首选使用前一种方法,因为同一时间仅需要运行一个进程,并且可以同时捕获 stdout 与 stderr 的内容,而第二种方法只能捕获 stdout 的内容。