Řešení 1:
Nejprve zálohujte crontab:
crontab -l > my_cron_backup.txt
Poté jej můžete vyprázdnit:
crontab -r
Obnovení:
crontab my_cron_backup.txt
crontab -l
Řešení 2:
crontab -e
pak zakomentujte každý řádek, který nechcete spustit pomocí #
.
Řešení 3:
Máte root přístup? Stačí pozastavit cron
sudo /etc/init.d/crond stop
Až budete připraveni, restartujte jej
sudo /etc/init.d/crond start
Řešení 4:
Pokud jako editor používáte vi, stačí zadat :%s/^/#/
v příkazovém režimu. Ve všech řádcích (%) nahradí (s///) začátek řádku (^) křížkem (#).
Řešení 5:
Nebyl jsem spokojen s výše uvedenými možnostmi, protože se nejednalo o jednu vložku.
Zakázat crontab -l | perl -nle 's/^([^#])/# $1/;print' | crontab
Aktivovat crontab -l | perl -nle 's/^#\s*([0-9*])/$1/;print' | crontab
příklad použití (upraveno tak, aby bylo vidět, že nezakazuje komentáře)
$ crontab -l
# Comment
0 0 * * 0 /opt/something.sh
$ crontab -l|perl -nle 's/^([^#])/# $1/;print'|crontab
$ crontab -l
# Comment
# 0 0 * * 0 /opt/something.sh
$ crontab -l|perl -nle 's/^#\s*([0-9*])/$1/;print'|crontab
$ crontab -l
# Comment
0 0 * * 0 /opt/something.sh
Testováno na RHEL a AIX a mělo by to fungovat hned po vybalení, aniž by bylo potřeba cokoliv instalovat