* * * * * timeout 300 /path/to/script.sh # Остановить через 5 минут
flock:* * * * * /usr/bin/flock -n /tmp/myscript.lock /path/to/script.sh
где -n - не ждать, если скрипт уже работает (-w 10 - ждать 10 секунд, если требуется)
>> file.log 2>&1 - stdout + stderr в один файл>> file.log 2>> error.log - раздельные логи0 0 * * * /path/to/script.sh >> "/var/log/script_$(date +\%Y\%m\%d).log" 2>&1
# Основная задача в 2:00 0 2 * * * /path/to/first_task.sh && touch /tmp/first_success # Вторая задача через 15 минут, только если первая успешна 15 2 * * * [ -f /tmp/first_success ] && /path/to/second_task.sh && rm /tmp/first_success
0 22 * * * [ $(awk '{print 100-$NF}' /proc/loadavg | cut -d. -f1) -lt 30 ] && /path/to/backup.sh
*/5 * * * * [ $(pgrep -c -f "script.sh") -eq 0 ] && /path/to/script.sh
0 3 1 * * find /var/log/app/ -name "*.log" -mtime +30 -exec gzip {} \;