Mac下根据进程名定时杀死/守护进程方式重启进程

参考博主文章https://blog.csdn.net/u010976445/article/details/50819287

以Mac下杀死和重启pycharm程序为例编写脚本,使用的是python3.6环境

一、杀死进程

ps -ef | grep pycharm | awk '{print $2}' | xargs kill -9  # ps -ef | grep pycharm | awk '{print $2}' | xargs执行之后,会将所有含有pycharm都进程号列出来

二、启动进程

/Applications/PyCharm.app/Contents/MacOS/pycharm

三、创建一个shell文件,假设命名未re_s.sh,内容如下,作用是用来杀死进程,延时5s,启动进程 (|| 和&& 的区别,参考此博主的博客https://www.cnblogs.com/clam/archive/2012/12/17/2821684.html)

#!/bin/bash

echo 're start' `date` >> /Users/007/Desktop/test/log.log &&  # 日志中记录脚本开始时间

ps -ef | grep pycharm | awk '{print $2}' | xargs kill -9 ||  # 杀死进程,此处可以省略||,(用|| 而没用&& ,因为此命令运行后会出现kill: xxxx: No such process 错误,|| 的意思是出现错误后执行接下来的语句,而&&是没有错误的情况下执行接下来的语句)

sleep 5s &&  # 延时5s

/bin/bash /Users/007/Desktop/test/re_start.sh &&  # 启动进程

echo 're end' `date` >> /Users/007/Desktop/test/log.log  # 写入日志

四、创建用来启动程序进程的脚本,这里假设命名为re_start.sh

#!/bin/bash

echo 'start' `date` >> /Users/007/Desktop/test/log.log &&

/Applications/PyCharm.app/Contents/MacOS/pycharm >>/Users/007/Desktop/test/log.log 2>&1 &  # 守护进程的方式启动

echo 'end' `date` >> /Users/007/Desktop/test/log.log

五、都设置好之后,运行re_s.sh文件即可

注意:.sh文件需要加可执行权限,不过为了方便,一般使用chmod 777 xxx.sh,权限全加,也可以将四和五中的部分代码整合成一个shell脚本,如果要定时,可以使用crontab进行定时http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html

# 整合后的代码

#!/bin/bash

echo 're start' `date` >> /Users/007/Desktop/test/log.log &&  # 日志中记录脚本开始时间

ps -ef | grep pycharm | awk '{print $2}' | xargs kill -9 ||  # 杀死进程,此处可以省略||,(用|| 而没用&& ,因为此命令运行后会出现kill: xxxx: No such process 错误,|| 的意思是出现错误后执行接下来的语句,而&&是没有错误的情况下执行接下来的语句)

sleep 5s &&  # 延时5s

/Applications/PyCharm.app/Contents/MacOS/pycharm >>/Users/007/Desktop/test/log.log 2>&1 &  # 守护进程的方式启动

echo 're end' `date` >> /Users/007/Desktop/test/log.log  # 写入日志

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值