Bash

如何在 systemd 腳本中指定從 bash 腳本重定向輸出的位置?

  • March 11, 2021

我在執行我的自定義應用程序的 bash 腳本中有一個命令:

./my_app --config ./cfg >> my_app.log 2>>my_app.err

我想把它包裝到一個系統服務中。到目前為止,我已經這樣做了:

[Unit]
Description=my_app
After=syslog.target

[Service]
ExecStart=/home/user123/my_app_dir/my_app --config cfg
Restart=on-abort
WorkingDirectory=/home/user123/my_app_dir
SyslogIdentifier=my_app
User=my_user

[Install]
WantedBy=multi-user.target

我如何必須將那些將輸出重定向到日誌的兩個部分轉換?

StandardOutput=file:/path/to/log1
StandardError=file:/path/to/log2

官方手冊。這將創建一個新文件或覆蓋舊文件,因此您可能想要StandardOutput=append:/path/to/log1保留舊日誌。

引用自:https://unix.stackexchange.com/questions/638702