当前第2页 返回上一页
一种可靠的方法是使用"kill -0 pid",kill -0不会向进程发送任何信号,但是会进行错误检查。如果进程存在,命令返回0,如果不存在返回1。
1 2 3 4 5 6 7 8 9 10 | [sw@gentoo ~]$ ps
PID TTY TIME CMD
pts/0 00:00:00 bash
pts/0 00:00:00 ps
[sw@gentoo ~]$ kill -0 15091
[sw@gentoo ~]$ echo $?
[sw@gentoo ~]$ kill -0 15092
-bash: kill: (15092) - No such process
[sw@gentoo ~]$ echo $?
[sw@gentoo ~]$
|
但是,这种方法对于普通用户来说只能用于检查自己的进程,因为向其它用户的进程发送信号会因为没有权限而出错,返回值也是1。
1 2 3 4 5 | [sw@gentoo ~]$ kill 2993
-bash: kill: (2993) - Operation not permitted
[sw@gentoo ~]$ echo $?
1
[sw@gentoo ~]$
|
当然,如果你用特权用户执行kill命令的话,就没有权限问题啦。
以上就是linux检测进程是否存在的详细内容,更多文章请关注木庄网络博客!
返回前面的内容
相关阅读 >>
Linux怎么查看磁盘空间
Linux中有关rsync命令的总结
Linux系统中的编译与安装是什么意思
Linux最常见基本命令总结
Linux打开文件命令有哪些
Linux终端乱码解决方法
Linux如何重命名文件和文件夹
Linux系统下如何查看硬盘数量
Linux系统如何查看密码
如何使用e-hpc创建超级计算集群(scc)faq
更多相关阅读请进入《Linux》频道 >>
转载请注明出处:木庄网络博客 » linux检测进程是否存在