我使用过的Linux命令之pidof - 找出正在运行程序的进程PID
本文链接:http://codingstandards.iteye.com/blog/841123
(转载请注明出处)
用途说明
pidof用于找出正在运行的程序的进程PID(find the process ID of a running program.),程序可以是一个二进制执行程序,也可以是一个shell脚本。如果是找出java程序的进程PID,pidof就无能为力了,可以使用ps -ef|grep java或jps -l来查看java进程的信息。通常找出进程PID的目的是确认程序是否在运行、或者为了把它杀掉、或者发送一个信号给它。
常用参数
格式:pidof program
找出program程序的进程PID,如果有多个就会全部列出,program不能是shell脚本名称。
格式:pidof -s program
找出program程序的进程PID,只列出一个。(Single shot - this instructs the program to only return one pid.)
格式:pidof -x script
找出shell脚本script的进程PID。
参数:-o omitpid
参数:-o omitpid1 -o omitpid2
在列出的进程PID中忽略omitpid。可以有多个。
参数:-s
只列出一个。
使用示例
示例一
[root@smsgw root]# pidof pidof
24386
[root@smsgw root]# pidof console
[root@smsgw root]# pidof bash
8681 17650 28223 16840
[root@smsgw root]# pidof man
[root@smsgw root]# pidof java
8882 27498 27482 30945 940 24465 23811 23068 2171 7022 24641 32656 32526
[root@smsgw root]# jps -l
25442 sun.tools.jps.Jps
注:在这台机器上jps似乎不能很好的看java进程信息。
[root@smsgw root]#
示例二 查看shell脚本的进程PID
下面演示了怎么查看脚本的PID的,可以发现通过不含路径的脚本文件名称、或者执行时的路径来查看,其他方式不行。
[root@web ~]# ls /opt/imx/imx_web3q/update.sh
/opt/imx/imx_web3q/update.sh
[root@web ~]# ps -ef|grep update.sh
root 17989 17963 0 Dec09 pts/7 00:00:05 /bin/sh ./update.sh
root 29329 28002 0 20:10 pts/2 00:00:00 grep update.sh
[root@web ~]# pidof update.sh
[root@web ~]# pidof -x update.sh
17989
[root@web ~]# pidof -x /opt/imx/imx_web3q/update.sh
[root@web ~]# pidof ./update.sh
[root@web ~]# pidof -x ./update.sh
17989
[root@web ~]#
问题思考
相关资料
【1】hscripts.com Linux pidof 命令? 是什么
【2】阿勃的 blog [翻译] pidof 命令手册
返回 我使用过的Linux命令系列总目录
分享到:
相关推荐
一、什么是pidof命令? 代码如下:#man pidof中的解释:pidof — find the process ID of a running program.pidof–用于查找一个运行的...二、pidof命令的参数-s 表示只返回1个 pid-x 表示同时返回运行给定程序的 she
当需要终止某个进程时,传统的做法是利用ps命令列出所有的进程,使用grep命令选出目标进程,然后使用kill命令终止进程。 利用pidof命令,可以省略ps与grep组合命令,直接把指定命令的进程ID写入到标准输出。 语法...
通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止,我们就需要先使用ps/pidof/pstree/top等工具获取进程PID,然后使用kill命令来杀掉该进程。kill命令是通过向进程发送指定的...
在linux根目录中,有一个/proc的VFS(虚拟文件系统),系统当前运行的所有进程都对应于该目录下的一个以进程PID命名的文件夹,其中存放进程运行的N多信息。其中有一个status文件,cat显示该文件, 第一行的Name即为...
linux进程命令一、ps -显示进程状态二、pstree – 以树状图显示进程三、pidof – 返回运行程序的进程ID四、 pgrep命令 – 用于检索当前正在运行的进程五、top命令 – 实时显示进程动态六、lsof – 查看进程文件七、...
进程实用程序用于高级进程管理的实用程序和库(pidfiles,根据比 pidof 更强大的匹配字符串查找 pid)和终止/等待/重新启动应用程序,以及查找有关应用程序的各种信息。 包含多个应用程序作为更强大的替代复杂有时有...
外部过滤器,程序和命令 12.1. 基本命令 12.2. 复杂命令 12.3. 时间/日期 命令 12.4. 文本处理命令 12.5. 文件与归档命令 12.6. 通讯命令 12.7. 终端控制命令 12.8. 数学计算命令 12.9. 混杂命令 13. ...
特别是有时候需要获取进程的pid,但又无法使用第三方库的时候。下面话不多说了,来一起看看详细的介绍吧。 方法适用linux平台. 方法1 使用subprocess 的check_output函数执行pidof命令 from subprocess import ...
12. 外部过滤器,程序和命令 12.1. 基本命令 12.2. 复杂命令 12.3. 时间/日期 命令 12.4. 文本处理命令 12.5. 文件与归档命令 12.6. 通讯命令 12.7. 终端控制命令 12.8. 数学计算命令 12.9. 混杂命令 13. 系统与管理...
全志R16平台编译linux系统V1.0.txt 2017/4/11 13:36 (编译请使用编译android的lichee的选项编译生成的.config文件,不然直接编译会报错!!!!) rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ tar...
history: (d查询历史执行过的命令 -c 清除历史操作命令) bash :(执行脚本) 文本编辑 cat :(d 查看文件 -n 带行号) more:(d 文件内容太多时候用 按照百分比显示) tail :(d 查看最后二十行内容 实时...
快速链接 主页 安装文档 下载 论坛 博客 开发指南 新增功能 摘要 psutil(进程和系统实用程序)是一个跨平台库,用于在 Python 中检索有关正在运行的进程和系统利用率(CPU、内存、磁盘、网络)的信息。 它主要用于...
写好的程序希望在崩溃之后能够自启动,于是利用linux的crontab功能,添加一个计划任务,每分钟执行一个脚本查看需要监控的进程是否还在,如果不在则启动之,否则不做任何事情。这么一个简单的脚本在crontab中运行...
这是一款使Unix命令集合能直接在window上面使用的应用程序。 所含的命令有: [, ar, ash, awk, base64, basename, bash, bbconfig, bunzip2, bzcat, bzip2, cal, cat, catv, chmod, cksum, clear, cmp, comm, cp, ...
popen()函数通过创建一个管道,调用fork()产生一个子进程,执行一个shell以运行命令来开启一个进程。这个管道必须由pclose()函数关闭,而不是fclose()函数。pclose()函数关闭标准I/O流,等待命令执行结束,然后...
psutil 是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括 CPU、内存、磁盘、网络等)信息。它主要应用于系统监控,分析和限制系统资源及进程的管理。它实现...
使用ptrace(2)以可移植的方式将 Linux syscall() 注入到外部进程。 已在x86(Arch Linux和Ubuntu),ARMv7(Android 6和7),MIPS(Debian),PPC64(Debian)上进行测试。 需要echo 0 | sudo tee /proc/sys/...
if [ -z `pidof java` ]; then echo -e `date +%Y-%m-%d` `date +%R`. “33[31m33[1m(JAVA)Process does not exist! 33[0m” >> /data/logs/java_check.log /usr/local/tomcat/bin/startup.sh >/dev/null 2>&1 ...
psutil(进程和系统实用程序)是一个跨平台的库,用于 在Python中检索有关运行进程和系统利用率(CPU,内存,磁盘,网络,传感器)的信息。 它主要用于系统监视,分析和限制流程资源以及运行流程的管理。它实现了...