ubuntu通过crontab创建定时任务,并执行sh

server/2024/12/22 9:18:10/

1、初始化crontab

执行命令 crontab -e

no crontab for username - using an empty one
Select an editor.  To change later, run 'select-editor'.1. /bin/nano        <---- easiest2. /usr/bin/vim.basic3. /usr/bin/vim.tiny4. /bin/ed

选择第一项 /bin/nano即可,确认后输入定时任务的执行命令

# Edit this file to introduce tasks to be run by cron.
# 
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').# 
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# 
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
# 添加一个执行脚本,每天凌晨1点运行一个nginx的重启
0 1 * * * /root/script/reloadNginx.sh

2、创建脚本文件reloadNginx.sh

# 进入目录
cd /root/script/
#编辑文件
vim reloadNginx.sh
#录入内容
main(){docker exec -i "nginx-proxy" /bin/bash -c "nginx -s reload && exit"
}
main
# 保存文件并退出
:wq 
#赋予文件权限,不设置,定时任务执行时会报错权限不足
chmod 777 ./reloadNginx.sh

3、修改crontab为输出日志文件

crontab执行默认会发送邮件,如果不进行相关配置,可能会导致定时任务不执行。我们不需要邮件,修改命令,令其输出日志文件即可

#编辑crontab
crontab -e#修改定时任务结束后的输出
# Edit this file to introduce tasks to be run by cron.
# 
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').
# 
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# 
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
# 添加一个执行脚本,每天凌晨1点运行一个nginx的重启
0 1 * * * /root/script/reloadNginx.sh >> /root/script/reloadNginx.log 2>&1

这样定时任务就执行完毕了,如果产生了异常,通过日志reloadNginx.log排查即可。


http://www.ppmy.cn/server/23685.html

相关文章

注意力机制(四)(多头注意力机制)

​&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a; &#x1f3c0;《深度学习基础知识》 相关专栏&#xff1a; ⚽《机器学习基础知识》 &#x1f3d0;《机器学习项目实战》 &#x1f94e;《深度学习项目实…

docker数据卷

概念 卷-文件 数据卷-相当于宿主机和容器之间的一块共享目录&#xff0c;容器停止或者删除不会丢失该目录内的数据 挂载命令 docker run [-it] -v 宿主机目录:容器目录 --privilegetrue [--name] 镜像名-i interact&#xff0c;交互 -t terminal&#xff0c;新开一个终端 --…

Linux进程——进程的概念(PCB的理解)

前言&#xff1a;在了解完冯诺依曼体系结构和操作系统之后&#xff0c;我们进入了Linux的下一篇章Linux进程&#xff0c;但在学习Linux进程之前&#xff0c;一定要阅读理解上一篇内容&#xff0c;理解“先描述&#xff0c;再组织”才能更好的理解进程的含义。 Linux进程学习基…

基于 Spring Boot 博客系统开发(二)

基于 Spring Boot 博客系统开发&#xff08;二&#xff09; 本系统是简易的个人博客系统开发&#xff0c;为了更加熟练地掌握SprIng Boot 框架及相关技术的使用。&#x1f33f;&#x1f33f;&#x1f33f; 基于 Spring Boot 博客系统开发&#xff08;一&#xff09;&#x1f4…

uniapp制作分页查询功能

效果 代码 标签中 <uni-pagination change"pageChanged" :current"pageIndex" :pageSize"pageSize" :total"pageTotle" class"pagination" /> data中 pageIndex: 1, //分页器页码 pageSize: 10, //分页器每页显示…

LeetCode 每日一题 ---- 【1146.快照数组】

LeetCode 每日一题 ---- 【1146.快照数组】 1146.快照数组方法一&#xff1a;二分查找 1146.快照数组 方法一&#xff1a;二分查找 第一次做到这种补充方法的题目&#xff0c;然后看到输入和输出用例的时候&#xff0c;愣了一下&#xff0c;这输入和输出用例有啥关联啊&#…

力扣33. 搜索旋转排序数组

Problem: 33. 搜索旋转排序数组 文章目录 题目描述思路复杂度Code 题目描述 思路 1.初始化左右指针&#xff1a;首先&#xff0c;定义两个指针left和right&#xff0c;分别指向数组的开始和结束位置。 2.计算中间值&#xff1a;在left和right之间找到中间位置mid。 3.比较中间值…

Spirng 当中 Bean的作用域

Spirng 当中 Bean的作用域 文章目录 Spirng 当中 Bean的作用域每博一文案1. Spring6 当中的 Bean的作用域1.2 singleton 默认1.3 prototype1.4 Spring 中的 bean 标签当中scope 属性其他的值说明1.5 自定义作用域&#xff0c;一个线程一个 Bean 2. 总结:3. 最后&#xff1a; 每…