linux crontab e编辑,linux crontab -e使用

1. 需求说明:

服务器上运行测试服务,但由于djnago的自带wsgi不稳定,会经常宕机,此时就需要监听端口,当端口关闭时,去重启服务就完成了需求,首先想到了linux自带的定时任务,crontab -e。

2.检测端关闭代码,并重启服务:

import socket

import os

import time

def IsOpen(ip, port):

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

try:

s.connect((ip, int(port)))

s.shutdown(2)

# 利用shutdown()函数使socket双向数据传输变为单向数据传输。shutdown()需要一个单独的参数,

# 该参数表示了如何关闭socket。具体为:0表示禁止将来读;1表示禁止将来写;2表示禁止将来读和写。

return True

except:

return False

if __name__ == '__main__':

# # 获取本机电脑名

# myname = socket.getfqdn(socket.gethostname())

# # 获取本机ip

# myaddr = socket.gethostbyname(myname)

flag = IsOpen('192.168.0.155', 8001)

if flag:

print('项目正在运行,不要担心')

else:

print(f'项目宕机,立即重启,重启时间:{time.strftime("%Y/%m/%d %H:%M:%S", time.localtime(time.time()))}')

os.system('python manage.py runserver 0.0.0.0:8001 >> /home/cykj/git_product/logs/log.log 2>&1 &')

3. 使用crontab -e

3.1 第一次打开crontab -e 将要更换编辑器

输入:select-editor 命令

Select an editor. To change later, run 'select-editor'.

/bin/ed

/bin/nano

/usr/bin/vim.tiny

Choose 1-3 [2]: 3

选择3vim编辑器,就可以用:wq保存了。

3.2 问题:

no crontab for cykj - using an empty one

crontab: installing new crontab

解决:使用 crontab -u 当前用户名(cykj) -e ,进行任务编辑,然后wq保存

3.3 编辑任务

*/1 * * * * /home/cykj/my_env/listen_env/bin/python3 /home/cykj/listen/lis.py >> /home/cykj/listen/1.txt

每分钟进行执行python脚本,并将python的输出内容重定向到1.txt中。

3.3.1 时间举例:

30 21 * * * /etc/init.d/nginx restart

每晚的21:30重启nginx。

45 4 1,10,22 * * /etc/init.d/nginx restart

每月1、10、22日的4 : 45重启nginx。

10 1 * * 6,0 /etc/init.d/nginx restart

每周六、周日的1 : 10重启nginx。

0,30 18-23 * * * /etc/init.d/nginx restart

每天18 : 00至23 : 00之间每隔30分钟重启nginx。

0 23 * * 6 /etc/init.d/nginx restart

每星期六晚上的23 : 00 pm重启nginx。

* */1 * * * /etc/init.d/nginx restart

每一小时重启nginx

* 23-7/1 * * * /etc/init.d/nginx restart

晚上11点到早上7点之间,每 隔一小时重启nginx

0 11 4 * mon-wed /etc/init.d/nginx restart

每月的4号与每周一到周三 的11点重启nginx

0 4 1 jan * /etc/init.d/nginx restart

一月一号的4点重启nginx

*/30 * * * * /usr/sbin/ntpdate 210.72.145.20

每30分钟(半小时)同步一下时间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值