2
我有簡單bash腳本,在終端工作手冊,但cron的後給出了一個空的可變運行。運行的cron後擊空可變的,但手動
#!/bin/bash
gwip=`/usr/bin/nmcli dev list iface eth0 | grep IP4-SETTINGS.GATEWAY: | awk '{ print $2}'`
printf '%s\n' "$(date) =- $gwip -= " >> /var/log/looog.log
運行:/bin/bash /test.bash
輸出文件/var/log/looog.log:
1 monday 2016 14:17:36 +0300 =- 23.18.117.254 -=
當我通過cron運行,變量是空的。
*/1 * * * * root /bin/bash /test.bash
輸出文件/var/log/looog.log:
1 monday 2016 14:19:13 +0300 =- -=
爲什麼變量$ gwip是空的?如何解決它?
我在looog.err.log錯誤:**(過程:11885):WARNING **:nm_client_get_devices:錯誤越來越設備:未收到回覆。可能的原因包括:遠程應用程序未發送回覆,消息總線安全策略阻止回覆,回覆超時過期或網絡連接中斷。 錯誤:未找到設備'eth0'。 –
嗯,這是你的錯誤。爲什麼'nmcli'將不會從您的系統上運行的cron是不是真的有很大的StackOverflow問題 - 它一定會是一個事實深入調查 - 但我會通過看是否已啓用SELinux的開始。如果您將其設置爲許可但記錄模式,則可以讓您找出哪些權限是必需的但不可用。 –
......該錯誤使得它相當清楚地表明慶典正在它甚至從cron應有的方式,這樣的話你沒有一個變量捕獲的問題,對不對?這裏有問題的其他子集嗎? –