パスにスペースがある cron スクリプトを実行しようとしたときにエラーが発生しました

パスにスペースがある cron スクリプトを実行しようとしたときにエラーが発生しました

いくつかの rsync コマンドを含むスクリプトがあります。スクリプト ファイルは、所有者とグループの権限が root に設定された NTFS パーティションに配置されています。

次のコマンドを使用して、ターミナルからファイルを手動で実行しても問題はありません。

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

crontab エントリは次のとおりです (root ではなく、私の crontab):

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"

関連情報