管道系统输出到文件

时间:2016-07-06 15:52:01

标签: logging systemd piping

我正在尝试使用>>将systemd中的命令输出传递给文件 比如this问题

不幸的是,我回来的结果就好像我正在运行的原始命令正在使用>>作为一个开关,并没有认识到它。

我之前使用upstart做了同样的事情,但没有遇到这个错误:(

这是我的systemd.service文件:

[Unit]
Description=ss13_server
[Service]
User=ss13
WorkingDirectory=/home/ss13/ss13
ExecStart=/usr/local/byond/bin/DreamDaemon /home/ss13/ss13/baystation12.dmb 25565 -trusted >> /home/ss13/ss13-log
Restart=on-failure
RestartSec=90s

我得到的结果是:

Dream Daemon: invalid option '>>'

通常我会假设DreamDaemon的某些内容与>>不兼容但正如我所说,我过去曾成功使用过这种方法;它也可以工作如果我手动运行命令。

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

将命令行放在文件中:

#!/bin/bash
/usr/local/byond/bin/DreamDaemon /home/ss13/ss13/baystation12.dmb 25565 -trusted >> /home/ss13/ss13-log

然后让ExecStart=引用该文件。