嘗試執行路徑中有空格的 cron 腳本時發生錯誤

嘗試執行路徑中有空格的 cron 腳本時發生錯誤

我有一個腳本,其中包含幾個 rsync 命令。該腳本檔案放置在 NTFS 分割區中,擁有者和群組權限設定為 root。

我使用以下命令從終端手動運行文件沒有問題:

"/mnt/Files/Software/Software Customizations/Linux/Scripts/rsync_backup.sh"

crontab 條目是(我的 crontab,不是 root):

0 15 * * 6 export DISPLAY=:0 && gnome-terminal -e "/mnt/Files/Software/Software Customizations/Linux/Scripts/rsync_backup.sh"

但執行檔時出現以下錯誤

There was an error creating a child process for this terminal.
Failed to execute child process "/mnt/Files/Software/Software" (Permission denied)

螢幕截圖:

截圖錯誤

你能告訴我問題是什麼嗎?看起來不像權限問題,因為我可以在不使用 sudo 的情況下執行該文件,而螢幕截圖中的路徑只是部分路徑,這讓我相信這是空格問題。

答案1

嘗試轉義路徑中的空格:

0 15 * * 6 export DISPLAY=:0 && gnome-terminal -e "/mnt/Files/Software/Software\ Customizations/Linux/Scripts/rsync_backup.sh"

相關內容