© 2023 Feiniao, Inc. All rights reserved.

如何在Linux系统中使用crontab自定义闹钟 - 怎么在Linux系统中使用crontab自定义闹钟?

Linux Crontab
通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、星期及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。
1,创建需要执行的命令文件。

# test_alarm.sh
clementine /home/your_name/Music/Apollo.mp3 # 用clementine音乐播放器播放mp3音频

2,给文件添加可执行的权限。

chmod +x test_alarm.sh
或者 chmod +777 test_alarm.sh

3,创建定时配置文件。

crontab -e

如果是第一次使用crontab,将出现以下提示,这里需要选择一个擅长的默认编辑器,我选择vim,输入2,然后回车

no crontab for your_name - using an empty one
Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.basic
  3. /usr/bin/vim.tiny
  4. /usr/bin/code
  5. /bin/ed

Choose 1-5 [1]: 2

如果你想要每分钟调用test_alarm.sh,那么可以这样,

* * * * * /home/your_name/Documents/works/test_alarm_clock.sh
# wq保存
=> crontab: installing new crontab

# 如果没有安装MTA(邮件传输代理),可以设置cron的输出重定向到一个文件
* * * * * /home/your_name/Documents/works/test_alarm_clock.sh > /home/your_name/Documents/works/cron.log 2>&1

4,查看日志。
  • 打开crontab日志

# sudo vim /etc/rsyslog.d/50-default.conf
=>
#cron.*    /var/log/cron.log # 取消该行注释

# wq保存后重启日志服务
sudo service rsyslog restart

  • 直接通过/var/log/syslog也可以查看日志,不过不是很方便,你可以用这条命令更方便的查看关于cron的日志

tail -f syslog | grep -E "cron|CRON"

更多crontab的时间设置推荐这个在线文档