小编Som*_*Guy的帖子

为什么某些 systemctl 操作会输出到 stderr?

我创建了一项服务;让我们称呼它吧abc.service。我跑:

sudo systemctl enable /home/pi/abc.service 1>output.txt 2>error.txt
Run Code Online (Sandbox Code Playgroud)

并且output.txt为空,而error.txt包含:

Created symlink /etc/systemd/system/multi-user.target.wants/abc.service -> /home/pi/abc.service.
Created symlink /etc/systemd/system/abc.service -> /home/pi/abc.service.
Run Code Online (Sandbox Code Playgroud)

为什么是这样?

编辑:我的目的是这样的——我有一个正在运行的全局程序,可以运行命令,并且带有 stderr 的命令被标记并打印到错误文件中。然而,似乎 systemd 正在打印到 stderr (以及我的错误文件),即使它看起来不是一个错误。

EDIT2:示例 systemd 文件:

[Unit]
Description=Test file

[Service]
Type=simple
ExecStart=/bin/ls /home/pi

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

刚刚测试,启用此文件打印到 stderr (如error.txt上面所示)。测试服务,打印主目录的目录内容。

command-line bash systemd

5
推荐指数
1
解决办法
2232
查看次数

标签 统计

bash ×1

command-line ×1

systemd ×1