. /etc/profile #如果要把这个shell脚本放到crontab中,这句不能少,用来初始化程序环境变量,这是root用户的环境变量文件

PNAME="程序名字"    #引号不能少,因为程序名字后面可能会有空格和参数

PATHNAME=程序所在文件夹绝对路径LENGTH=`ps -ef|grep "$PNAME"|grep -v grep|cut -b 49-200|wc -c ` #引号不能少,同上

if test $LENGTH -eq 0

then

cd $PATHNAME

nohup $PNAME >/dev/null &

fi

杀死进程(可能有多个,暂不考虑)

PNAME="程序名字"    #引号不能少,因为程序名字后面可能会有空格和参数

PATHNAME=程序所在文件夹绝对路径PID=`ps -ef|grep "$PNAME"|grep -v "grep"|awk '{print $2}'`

或者

PID=`ps -ef|grep "$PNAME"|grep -v "grep"|cut -b 10-15`#引号不能少,同上LENGTH=echo $PID|wc -cif test $length -ne 0

then

kill -9 $PID

fi

备注:

-eq 等于 -z 空串(if [ -z $filename2_size ] || [ -z $filename1_size ] || [ -z $filename0_size ]; then

echo 'no such files' )

-ne 不等于 = 两个字符相等

-gt 大于 != 两个字符不等

-lt 小于 -n 非空串

-le 小于等于

-ge 大于等于

命令1 && 命令2

&&左边的命令(命令1)返回真(即返回0,成功被执行)后,&&右边的命令(命令2)才能够被执行;

换句话说,“如果这个命令执行成功&&那么执行这个命令”。

命令1 || 命令2

如果||左边的命令(命令1)未执行成功,那么就执行||右边的命令(命令2);

或者换句话说,“如果这个命令执行失败了|| 那么就执行这个命令”

linux写一个脚本杀进程,linux下如何自动检测并重新启动一个死掉的进程,然后再把它杀死:)(shell脚本实现)...相关推荐

  1. 服务器清理死掉的进程

    服务器清理死掉的进程 在服务器上跑程序突然发现GPU占用了 先用 nvidia-smi 看一下是什么进程占用了,发现里面并没有显示 那应该是有之前跑的网络程序死掉了,没清理干净,查看一下占用情况: p ...

  2. linux写磁带软件,如何在Linux下安装磁带机

    安装环境: 服务器:LC2. 软件:Red Hat 6.0 (kernel: 2.2.12). 磁带机:DAT8e. 具体步骤:首先将磁带机连接在服务器上,HP的服务器中SCSI卡的类型一般为Adap ...

  3. linux关机方法有哪些?有何区别_Linux下判断是否正常关机的一个简单方法

    思想:系统启动的时候生成一个文件,正常关机的时候则删除这个文件,则可以根据系统开机时有没有那个文件来判断是不是非正常关机. 步骤: 在/etc/rc.d/init.d/下编程脚本. 判断是否正常关机, ...

  4. 嵌入式linux写文件内存增加,嵌入式Linux对内存的直接读写

    本文转载于:http://blog.sina.com.cn/s/blog_838007b101013n0y.html memdev:直接读写内存. 可以在busybox的杂项中找到: CONFIG_U ...

  5. linux强制kill死掉的进程和窗口

    转自ubuntu系统强制关闭程序或窗口 1.最为常用的方法: $ps -aux    查看所有运行的进程 $kill -9  (PID)  杀死进程号为PID的进程 (基本都能处理卡住的程序或窗口,适 ...

  6. 解决MacOS虚拟机配置静态IP后不能ping通外网(桥接模式下的自动检测)

    1.实验环境: mac,VMware Fushion,CentOS7. 2.出现问题:能ping通主机,不能ping通百度(外网) 3.解决流程(熟悉流程的可以直接看总结) 使用 su root命令然 ...

  7. Shell脚本语言笔记

    Shell脚本语言笔记 一.shell是什么? 二.Shell 是一种脚本语言 1.定义变量 2.单引号和双引号的区别: 3.将命令的结果赋值给变量,常见的有以下两种方式: 4.只读变量 5.删除变量 ...

  8. linux下开机自动启动,定时运行shell脚本

    Shell 脚本与window/dos 下的批处理相似,也就是用各类命令预先放入一个文件中,方便一次性执行的的一个程序文件,主要是方便管理员进行设置或者管理用. 一.shell脚本 在Linux下,我 ...

  9. linux 下取进程占用 cpu/内存 最高的前10个进程

    1. linux 下 取进程占用 cpu 最高的前10个进程 ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head ps auxw|head -1 ...

最新文章

  1. msp430中如何连续对位进行取反_四元数数控:如何保养视觉对位平台?
  2. 如何使用confd+ACM管理Nginx配置
  3. Learning-Python【0】:Windows环境下Python2和Python3的安装
  4. 5.7 Components — Sending Actions From Components to Your Application
  5. 软件测试工程师-Python语言
  6. 95-280-036-源码-资源管理-计算资源管理-TaskSlot-TaskExecutor 中 Slot 的管理
  7. matlab anova 如何不画图,方差分析的数据处理和作图
  8. pytorch学习笔记(十二):权重衰减
  9. C3P0连接池配置方式
  10. JavaWeb:Tomcat、Servlet
  11. 如何更好地控制input输入框的高度
  12. python分组求和_Python–多个键分组求和
  13. 机器学习——联合概率分布及其意义
  14. 深度学习笔记-吴恩达
  15. 程序员光学技术还不够?推荐一份运营书单给你品一品
  16. Error:Execution failed for task ':recordlib:lint'. Lint found errors in the project; aborting buil
  17. TextView(显示文本)
  18. mysql_install_db命令详解_Mysql_install_db相关介绍
  19. 【java】对URL中的中文和符号进行UrlEncode转码
  20. C语言实现RC4加密算法

热门文章

  1. 关于实现Runnable接口的类中有公共属性问题
  2. win10系统下载-靠谱推荐
  3. Spring @ControllerAdvice @ExceptionHandler
  4. 实验9:Problem D: 从点到面
  5. ORA-19573: cannot obtain exclusive enqueue for datafile 1
  6. php判断数组是否存在字符串中,php判断数组元素中是否存在某个字符串的方法_php技巧...
  7. mysql 进阶_mysql进阶知识
  8. [Android] 拍照、截图、保存并显示在ImageView控件中
  9. LeetCode SQL 196. 删除重复的电子邮箱
  10. 2015年第六届蓝桥杯 - 省赛 - C/C++大学B组 - F. 加法变乘法