linux定时执行某个文件

搬瓦工机场JMS

已经搞定  万能的谷歌搜索

  1. #!/bin/sh
  2. count=`ps -xH |grep 123.py|grep -v "grep" |wc -l`
  3. echo $count
  4. if [ 6 == $count ];then
  5. ps -ef|grep 123.py|grep -v grep|awk ‘{print $2}’|xargs kill -9
  6. nohup python /root/123.py > /root/123.log 2>&1 &
  7. echo $count
  8. fi

复制代码

贴一个大佬的博客教程

https://blog.csdn.net/u012189747/article/details/78873087

照着大佬的内容修改了下

吉林网友:crontab,linux你还需要为定时执行任务发愁??
重庆网友:问的是shell脚本里这段语句,还有没有更精简的,或者更智能化一点。。。

而不是crontab。。。
上海网友:
我靠,两行代码,你还要精简一下,要不请个人人工操作,0代码?
黑龙江网友:精简不了就智能化点咯,判断命令输出的数字低于某个数值就自动重启,反之则不管 – –
西藏网友:将命令输出的数字定义为一个变量,然后使用if判断就行了呀
福建网友:中文我知道理论,英文无法实现代码。。。
贵州网友:请运维操作,微信发命令
青海网友:运维才不会做这类小事…
河北网友:就由得123.py一直运行好了,为什么要杀死它?
定时执行的话就while循环里面加个time.sleep(n),执行另一个def就行了吧。。。

新疆网友:就由得123.py一直运行好了,为什么要杀死它?
定时执行的话就while循环里面加个time.sleep(n),执行另一个def就行了吧。。。

内蒙古网友:不用定时任务的话,就一个循环for. 和Sleep
贵州网友:循环.运行后加个杀死。crontab定时,不轻便?
辽宁网友:大佬怎么写啊,方便改下么- –
河北网友:能一直运行,我就不弄shell脚本了 直接后台运行了,

长时间运行123.py会假死,不爬取数据,所以就弄个 1个小时或者2个小时自动重运行。
新疆网友:不熟 ,我也不会写.只是给思路
台湾网友:·ps -ef | awk ‘!/awk/&&/123[.]py/{print $2}’ | xargs kill -9·
或者
Debian : ·pgrep -f "123.py" | xargs kill -9`

重庆网友:完全看不懂你的需求
西藏网友:大佬方便私信个联系方式么,你发的代码貌似不行,弄好了,小弟奉上红包.
四川网友:123.py 这个文件长时间运行会导致无法爬取内容,非要停止掉,重新运行123.py才能爬取到内容.

我贴的代码,就是 先停止123.py,再在后台运行123.py  设置的时间是  每隔30分钟运行一次.

现在想找大佬改下,看能不能再优化一下代码,判断123.py的输出数值低于某个数值就停止掉再自动运行,反之则不管。

内蒙古网友:123.py 这个文件长时间运行会导致无法爬取内容,非要停止掉,重新运行123.py才能爬取到内容.

我贴的代码,就是 先停止123.py,再在后台运行123.py  设置的时间是  每隔30分钟运行一次.

现在想找大佬改下,看能不能再优化一下代码,判断123.py的输出数值低于某个数值就停止掉再自动运行,反之则不管。

江西网友:好的,谢谢大佬了
山西网友:还是保存好pid,然后直接kill吧
甘肃网友:已经搞定了,设置好需要判断的数值,如果等于这个数值就关掉进程,再重启,避免总是重启什么的。

未经允许不得转载:美国VPS_搬瓦工CN2 GIA VPS » linux定时执行某个文件

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏