Je suis nouveau sur crontab et je voudrais exécuter le script suivant à partir de /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'
J'ai essayé avec et sans bash-c
option, mais le script ne s'exécute pas.
Mon objectif est:
L'aide est appréciée.
Il vous manque un espace après la commande bash
et l'argument -c
.
Cela devrait fonctionner:
0 15 * * * root bash -c 'for i in /home/Dell/Downloads/*.{pdf,docx,png,jpg,PDF,DOCX}; do shred -zvu "$i" -n20; done'
Quelques conseils supplémentaires:
crontab
en tant qu'utilisateur root
si vous n'en avez pas besoin./etc/crontab
fichier. Ne modifiez pas directement les fichiers crontab, utilisez plutôt crontab -e
commande ou Sudo crontab -e
pour les commandes qui ont besoin des droits root
. Notez que vous ne placez pas le champ user
dans les "autres" fichiers crontab
.Si vous avez plusieurs commandes, vous pouvez utiliser bash -c
comme vous le faites, mais je préfère mettre les commandes dans un script et l'exécuter à partir de crontab.
Pour exécuter un script au démarrage, vous pouvez utiliser @reboot
au lieu de 0 15 * * *
.