我想使用systemd定期归档一些日志。然而,它并没有像我想要的那样工作。根据我的测试,字符串命令的第二部分失败了,我真的不知道出了什么问题。如果有人能给我点建议,我将不胜感激。谢谢。
Inside Unit File:
ExecStart=/bin/tar -zcvf "/var/log/test/$(/bin/date)_syslog_archive.tar.gz"/tmp/日志/">
得到错误:
主进程退出,代码=退出,状态=2/INVALIDARGUMENT
一个单独的脚本是一个可能的解决方案,正如Charles所写,或者您可以使用bash -c
或sh -c
运行命令,如下所示:
/bin/bash -c '/bin/tar -zcvf "/var/log/test/$(/bin/date)_syslog_archive.tar.gz" "/tmp/log/"'
作为题外话,您可能需要date
命令的+
参数,如date +%s
或date +%Y%m%d
,以便您获得适合文件名的内容,使其像这样:
/bin/bash -c '/bin/tar -zcvf "/var/log/test/$(/bin/date +%s)_syslog_archive.tar.gz" "/tmp/log/"'