Linux定时执行程序和关闭程序
创始人
2024-12-08 23:04:06
0次

cron是一个基于时间的作业调度器,可以在指定的时间运行命令。

打开终端并编辑cron任务

crontab -e 

定时任务

# 每天20点30分执行程序 30 20 * * * /home/user/my_program # 每天15点30分关闭程序 30 15 * * * pkill my_program  

定时在tmux会话中运行
已有会话中运行

0 16 * * * tmux send-keys -t mysession '/path/to/your/script.sh' C-m 
  • send-keys -t mysession:将命令发送到名为 mysession 的 tmux 会话。
  • ‘/path/to/your/script.sh’:指定要运行的脚本路径。
  • C-m:相当于按下回车键,执行命令。如果没有 C-m,命令会被发送到 tmux 会话,但不会执行。
    新的会话中运行
0 16 * * * tmux new-session -d -s mysession '/path/to/your/script.sh' 
  • new-session -d:创建一个新的 tmux 会话,并在后台运行。
  • -s mysession:指定会话名称为 mysession。
  • ‘/path/to/your/script.sh’:指定要运行的脚本路径。

crontab 用法

crontab 是 Unix 和类 Unix 操作系统上用于管理定时任务(也称为计划任务)的命令。以下是 crontab 的基本用法和常见的例子:

基本用法

  1. 查看当前用户的 crontab 文件:

    crontab -l 
  2. 编辑当前用户的 crontab 文件:

    crontab -e 

    这将打开一个编辑器,让你可以编辑定时任务。

  3. 删除当前用户的 crontab 文件:

    crontab -r 
  4. 为指定用户设置 crontab 文件(需要超级用户权限):

    sudo crontab -u username -e 

补充:

更改默认编辑器
如果你想更改默认编辑器(在之后运行 crontab -e 时生效),可以使用以下命令来选择默认的编辑器:

select-editor 

crontab 文件格式

crontab 文件的每一行表示一个定时任务,格式如下:

* * * * * command 

每个星号的位置分别表示:

  • minute(分钟):0 - 59
  • hour(小时):0 - 23
  • day of month(日期):1 - 31
  • month(月份):1 - 12
  • day of week(星期几):0 - 7(0 和 7 都表示星期天)

例如,以下定时任务将在每天凌晨 2 点运行:

0 2 * * * /path/to/command 

常见例子

每分钟都输出字符串到文件

* * * * * echo "This is a message at $(date)" >> /home/user/message.log 

每天凌晨 3 点运行一个脚本:

0 3 * * * /home/user/backup.sh 

每隔 5 分钟运行一次脚本:

*/5 * * * * /home/user/check_status.sh 

每周一到周五的上午 8 点运行:

0 8 * * 1-5 /home/user/weekday_task.sh 

每月的第一天凌晨 1 点运行:

0 1 1 * * /home/user/monthly_report.sh 

每周六和周日的中午 12 点运行:

0 12 * * 6,7 /home/user/weekend_task.sh 

使用环境变量

你可以在 crontab 文件的顶部定义环境变量,例如:

SHELL=/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin MAILTO=user@example.com  # 定时任务 0 2 * * * /home/user/backup.sh 

上面的 MAILTO 变量会将定时任务的输出结果通过邮件发送给指定的用户。

总结

crontab 是一个强大的工具,可以帮助你自动化定时任务。在编辑 crontab 文件时,确保格式正确并且任务路径和权限设置正确,以确保任务按预期运行。

相关内容

热门资讯

玩家爆料开挂app!丹东约战麻... 玩家爆料开挂app!丹东约战麻将多功能开挂app,丹东约战麻将果然真的有开挂app1、下载好丹东约战...
终于清楚辅助软件!丰城棋牌多功... 终于清楚辅助软件!丰城棋牌多功能辅助软件,丰城棋牌本来是真的有辅助软件1、起透看视 丰城棋牌辅助软件...
重大消息透视器方法!科尔沁麻将... 重大消息透视器方法!科尔沁麻将多功能透视器方法,科尔沁麻将本来是有透视器方法科尔沁麻将脚本下载中分为...
分享个大家辅助方法!天津麻将多... 分享个大家辅助方法!天津麻将多功能辅助方法,天津麻将竟然是真的有辅助方法1、很好的工具软件,可以解锁...
带你了解外挂攻略!逍遥皖北棋牌... 带你了解外挂攻略!逍遥皖北棋牌多功能外挂攻略,逍遥皖北棋牌总是是有外挂攻略1、在逍遥皖北棋牌插件功能...
热门推荐透视挂攻略!悠乐汇多功... 热门推荐透视挂攻略!悠乐汇多功能透视挂攻略,悠乐汇切实真的有透视挂攻略;1、全新机制【悠乐汇ai辅助...
推荐一款辅助方法!科尔沁麻将多... 推荐一款辅助方法!科尔沁麻将多功能辅助方法,科尔沁麻将其实真的有辅助方法1、不需要AI权限,帮助你快...
重大来袭开挂攻略!一乐浙江多功... 重大来袭开挂攻略!一乐浙江多功能开挂攻略,一乐浙江一贯是真的有开挂攻略1、让任何用户在无需一乐浙江安...
详细说明作弊器技巧!启东麻将多... 详细说明作弊器技巧!启东麻将多功能作弊器技巧,启东麻将一贯存在有作弊器技巧1、下载好启东麻将透视辅助...
玩家必看科普辅助插件!闲来互娱... 玩家必看科普辅助插件!闲来互娱多功能辅助插件,闲来互娱一贯有辅助插件1、很好的工具软件,可以解锁游戏...