web-dev-qa-db-ja.com

Crontab:Ubuntu実行スクリプト(noob)

私はcrontabを使い始めたばかりで、/etc/crontabから次のスクリプトを実行したいと思います。

0 15    * * *   root    bash-c 'for i in /home/Dell/Downloads/*.{pdf,docx,png,jpg,PDF,DOCX}; do shred -zvu "$i" -n20; done'

bash-cオプションを使用して、または使用せずに試しましたが、スクリプトが実行されません。

私の目的は:

  1. このスクリプトをCrontabから実行する
  2. 起動時にこのスクリプトを実行する

助けていただければ幸いです。

4
orrp

コマンドbashと引数-cの後にスペースがありません。

これはうまくいくはずです:

0 15    * * *  root bash -c 'for i in /home/Dell/Downloads/*.{pdf,docx,png,jpg,PDF,DOCX}; do shred -zvu "$i" -n20; done'

いくつかの追加のヒント:

  • 必要がない場合は、crontabをユーザーrootとして実行しないでください。
  • あなたはそれを/etc/crontabファイルに入れると書いた。 crontabファイルを直接編集しないでください、代わりにcrontab -eコマンドまたはSudo crontab -eを使用するコマンドroot権限が必要です。 userフィールドを「その他」のcrontabファイルに配置しないことに注意してください。
  • 複数のコマンドがある場合は、bash -cを使用できますが、 スクリプトにコマンドを入力 し、crontabから実行します。

  • 起動時にスクリプトを実行するには、@rebootの代わりに0 15 * * *を使用できます。

13
pLumo