Debian

定時任務−x/usr/lib/php5/sessionclean−X/在sr/l一世b/pHp5/s和ss一世這nCl和一種n-x /usr/lib/php5/sessionclean返回命令未找到

  • May 20, 2019

我在 Debian 8 機器上執行 PHP 5.6,因此有一個 cronjob 以 root 身份執行以清理會話數據:

09,39 * * * * root [ -x /usr/lib/php5/sessionclean ] && /usr/lib/php5/sessionclean

直到上週我開始收到關於這個 cronjob 的郵件時才知道我有這個 cronjob:

/bin/sh: 1: root: not found

當我嘗試執行上述命令時,以“-x”開頭的命令失敗:

-bash: -x: command not found

-x 的作用是什麼

[ -x /usr/lib/php5/sessionclean ]

意思是?知道為什麼我會收到此錯誤/郵件嗎?

除非您使用系統範圍的 crontab /etc/crontab,否則沒有使用者欄位:

範例使用者 crontab 文件:

# Edit this file to introduce tasks to be run by cron.
...
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command

如您所見,該user欄位失去。

測試-x文件是否/usr/lib/php5/sessionclean存在並且是可執行的。如果沒有使用者名欄位,您還可以編寫:

09,39 * * * * test -x /usr/lib/php5/sessionclean && /usr/lib/php5/sessionclean

但是您的版本應該在沒有使用者名欄位的情況下也能正常工作。

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