linux pidof 源码,在Linux系统下使用Pidof命令及pidof命令的示例用法

pidof是一个命令行实用程序,可让您找到正在运行的程序的进程ID。在本文中,我们将解释如何使用Linux操作系统下的pidof命令,及pidof命令的示例用法。

47c891ec48d84881ae8d5556823d9a90.png

如何使用pidof命令

对于基于Red Hat和Debian的发行版,有pidof的不同实现。在Red Hat发行版中,pidof命令是procps-ng软件包的一部分,而在Debian上,它是sysvinit-utils的一部分,我们将介绍两种实现方式共有的选项。

pidof命令的语法如下:

pidof [OPTIONS] PROGRAM_NAME

该命令接受零个或多个名称作为参数,但是通常,您只将一个名称传递给pidof。

不带任何选项调用时,pidof将打印与给定名称匹配的所有正在运行的程序的PID,例如,要查找SSH服务器的PID,应运行:

pidof sshd

如果有名称与sshd匹配的正在运行的进程,则其PID将显示在屏幕上,如果未找到匹配项,则输出将为空:

4382 4368 811

当至少一个正在运行的程序与请求的名称匹配时,pidof返回0,否则,退出代码为1,在shell脚本中使用时,这很有用。

为确保仅显示要搜索的程序的PID,请使用该程序的完整路径名作为参数,例如,如果您在两个不同的目录中有两个同名的运行程序,则pidof将显示两个运行程序的PID。

默认情况下,显示匹配的正在运行程序的所有PID,使用-s选项强制pidof只显示一个PID:

pidof -s program_name

-o选项允许您从命令输出中排除具有给定PID的进程:

pidof -o pid program_name

当使用-o选项调用pidof时,可以使用名为%PPID的特殊PID来表示调用Shell程序或Shell脚本。

要仅返回使用相同根目录运行的进程的PID,请使用-c选项。

该选项仅适用于以root或sudo用户身份运行的pidof:

pidof -c pid program_name

pidof命令的示例用法

以下示例显示了如何结合使用pidof命令和kill命令来终止程序。

假设Firefox浏览器已无响应,并且您需要终止Firefox进程,首先,使用pidof查找PID:

pidof firefox

该命令将打印所有Firefox进程:

2551 2514 1963 1856 1771

一旦知道Firefox处理了PID,就发送SEGTERM信号终止所有PID:

sudo kill -9 2551 2514 1963 1856 1771

您还可以使用命令替换表达式$(...)在一个命令中终止程序:

sudo kill -9 $(pidof firefox)

结论

pidof命令用于查找特定正在运行的程序的PID。

pidof是一个简单的命令,没有太多选项,通常,您只会使用要搜索的程序的名称来调用pidof。

相关主题

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值