我有一個包含單一 IP 位址的檔案(“IPcontainer”),我想像這樣使用它:
6tunnel 80 $(< IPcontainer) 80
不幸的是,這僅在我手動執行時才有效,而不是當我將其用作 cronjob 時,如下所示:
0 * * * * 6tunnel 80 $(< /home/<MYUSERNAME>/IPcontainer) 80
據我所知 cron 依賴絕對路徑。
我需要如何更改它才能使其正常工作?
答案1
那是因為預設cron
使用/bin/sh
- 不支援$(< file)
語法
您可以更換
$(< /home/<MYUSERNAME>/IPcontainer)
透過 POSIX
$(cat /home/<MYUSERNAME>/IPcontainer)
或cron
明確告訴使用 bash
SHELL=/bin/bash
0 * * * * 6tunnel 80 $(< /home/<MYUSERNAME>/IPcontainer) 80
也可以看看