📅  最后修改于: 2023-12-03 15:09:23.225000             🧑  作者: Mango
bash
是一种流行的 Unix shell 和命令语言,它在 Linux 和 macOS 上广泛使用。在 bash
中,您可以编写脚本来安排作业(任务)并自动化日常工作流程。这可以节省时间和精力,增加生产力。
cron
使用 cron
工具可以在指定的时间自动运行作业,无需干预。以下是 cron
格式的表格:
|字段|意义|允许的值| |:--:|:--:|:--:| |分钟|0~59的整数|0-59| |小时|0~23的整数|0-23| |日|1~31的整数|1-31| |月|1~12的整数|1-12| |周几|0~6(0表示周日)|0-6|
要启用 cron
,请键入以下命令:
crontab -e
然后可以向 crontab
文件中添加任务,例如:
# 每天晚上10点运行命令
0 22 * * * command
# 每周日清空系统日志
0 0 * * 0 truncate -s 0 /var/log/messages
注意,如果 command
是脚本,请确保它具有可执行权限,否则 cron
无法运行它。
at
at
可以在之后的某个指定时间运行命令。以下是使用 at
的示例:
# 在10分钟后执行一次命令
echo "command" | at now + 10 minutes
# 在明天上午10点运行命令
echo "command" | at 10am tomorrow
systemd.timer
systemd
是一种 Linux 系统管理器,它允许您以更可靠和可预测的方式安排作业。该系统管理器基于 systemd.timer
完成任务。以下是 systemd.timer
的示例:
[Unit]
Description=My Job
[Timer]
OnCalendar=*-*-* 10:00:00
Persistent=true
[Install]
WantedBy=timers.target
此示例将在每天上午10点运行任务,并在系统运行时保持启动。要启用此 systemd.timer
,请键入以下命令:
systemctl enable my-job.timer
无论您是需要自动化日常工作流程,还是想用脚本完成某些任务,bash
可以帮助您轻松安排作业。通过 cron
、at
和 systemd.timer
,您可以在指定的时间自动运行命令、脚本或程序,从而节省时间并提高生产力。