我有一个 sh 脚本。如何使用 crontab 运行它?

Cri*_*ian 1 linux shell bash cron shell-script

我有以下文件execute-backup-from-container.sh。这个文件的内容是:

#!/bin/bash
FILE=minime.sql.`date +"%Y%m%d".gz`
CONTAINER='mysql_01'
SCRIPT_ON_CONTAINER='/container-mysql-dump.sh'

${OUTPUT}=$(docker exec ${CONTAINER} /$SCRIPT_ON_CONTAINER)

echo "=============="
echo "$CONTAINER:/$FILE"
echo "=============="
docker cp "$CONTAINER:/$FILE" backup-data/
Run Code Online (Sandbox Code Playgroud)

当我运行时,crontab -e我将输入以下内容:
0 5 * * 1 /home/me/projects/execute-backup-from-container.sh 这意味着execute-backup-from-container.sh应该在每天早上 5:00 执行。
问题是脚本根本没有执行。
那么到底是什么问题呢?为什么不执行?

Jef*_*ler 5

与您的条目对应的 cron 字段意味着:

minute:       0 
hour:         5 
day of month: * 
month:        * 
day of week:  1 
command:      /home/me/projects/execute-backup-from-container.sh
Run Code Online (Sandbox Code Playgroud)

用英语翻译为:星期一凌晨 5 点(一个月中的任何一天,任何一个月)。

如果你想执行它:

每天早上 5:00

那么你希望第 5 个字段是一个*

0 5 * * * /home/me/projects/execute-backup-from-container.sh
Run Code Online (Sandbox Code Playgroud)