Linux

無法啟動 crontab。它給出了一個錯誤

  • August 22, 2017

嗨,當我使用 cronjob 送出 shell 腳本時,我面臨以下問題。

我附上了備份幫助命令。

* * * * * ankush /home/ankush/test.sh
backup: Unrecognized operation 'codebak'; type 'backup help' for list

backup help list


backup: Commands are:
adddump         add dump schedule
addhost         add host to config
addvolentry     add a new volume entry
addvolset       create a new volume set
apropos         search by help text
dbverify        check ubik database integrity
deldump         delete dump schedule
deletedump      delete dumps from the database
delhost         delete host to config
delvolentry     delete a volume set sub-entry
delvolset       delete a volume set
diskrestore     restore partition
dump            start dump
dumpinfo        provide information about a dump in the database
help            get help on commands
interactive     enter interactive mode
jobs            list running jobs
kill            kill running job
labeltape       label a tape
listdumps       list dump schedules
listhosts       list config hosts
listvolsets     list volume sets
quit            leave the program
readlabel       read the label on tape
restoredb       restore backup database
savedb          save backup database
scantape        dump information recovery from tape
setexp          set/clear dump expiration dates
status          get tape coordinator status
version         show version
volinfo         query the backup database
volrestore      restore volume
volsetrestore   restore a set of volumes

請從我的控制台中找到命令流。

ankush@hn0-ank-d:~$ more test_script.sh
echo "test"
ankush@hn0-ank-d:~$ * * * * * ankush /home/ankush/test_script.sh
backup: Unrecognized operation 'codebak'; type 'backup help' for list
ankush@hn0-ank-d:~$

當我第一次執行程式碼時,它要求我安裝 sudo apt install openafs-client。我繼續安裝它。

可能是什麼原因?

看起來好像您正在嘗試直接在命令行上輸入 crontab 作業規範。那是行不通的。

要添加 crontab 作業,請使用

$ crontab -e

編輯您的 crontab。在那裡添加作業規範,保存並退出編輯器。

您擁有的工作規範,

* * * * * ankush /home/ankush/test_script.sh

看起來像一個系統 crontab 作業。也就是說,它有一個額外的第六個欄位,即使用者名(請參閱您的 crontab 手冊man 5 crontab)。你自己的私人 crontab 不應該有這個。

我相信這是您的 crontab 中應該包含的內容:

* * * * * /home/ankush/test_script.sh

/home/ankush/test_script.sh這將每分鐘呼叫一次腳本。這項工作的任何輸出或錯誤都應該通過電子郵件發送給您。


您收到的神秘錯誤消息來自嘗試* * *在 shell 中執行命令(等)。它與 cron 和您的腳本完全無關。shell 只是將其擴展*到目前目錄中的所有文件,並嘗試將其作為命令執行。顯然,第一個*擴展為backup codebak並且恰好backup是一些不明白什麼codebak意思的命令的名稱。

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