首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux下获取进程PID

Linux系统中常常需要获取进程pid进行一些操作,而Linux 交互式 Shell 与 Shell 脚本存在一定差异,主要是由于后者存在一个独立运行进程,因此在获取进程 pid 上二者也有所区别...ps 命令ps命令是最常用Linux命令之一,用于获取当前系统中进程信息,ps是显示瞬间进程状态,并不动态连续;如果想对进程进行实时监控应该用top命令。...当然,Linux系统也支持直接查找:最简单方法是使用pgrep:`pgrep -f name`如果需要查找到 pid 之后kill掉该进程,还可以使用pkill:`pkill -f name`如果是可执行程序的话...$pid执行 process-monitor.sh 会出现多个结果:$> sh process-monitor.sh3036 3098 3099进一步排查可以发现,多出来几个进程实际上是 Shell...条件来做进一步判断了如果我们不确定找到进程是否正确,可以通过判断pid所在进程是否运行:if ps -p $PID > /dev/nullthen echo "$PID is running"

1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux进程概念(二.查看进程、父进程进程进程状态详解)

    ps 是一个常用 Unix/Linux 命令,用于显示当前系统中运行进程信息。...PID关系: 进程PID进程标识符)是由父进程调用fork()或类似系统调用创建进程PPID(父进程标识符)与创建它进程PID相同。...在Unix/Linux系统中,可以使用 getpid() 系统调用来获取当前进程PID,使用 getppid() 系统调用来获取当前进程进程PID。...下面是对这两个返回值解释: 给父进程返回进程 PID:在父进程中,fork 返回新创建进程进程 ID(PID),这个 PID进程标识符,父进程通过这个 PID 可以识别并操作进程。...3.3Linux中状态初步认识 一个进程可以有几个状态(在Linux内核里,进程有时候也叫做任务)进程状态通常由几个不同状态标识符表示。

    1.4K10

    Linux系统进程编程之回收进程(三)

    那么说了这么多,我们该怎么样来回收Linux系统僵尸进程呢?...---pid > 0 等待其进程I D与p i d相等进程。 ---pid == 0 等待其组I D等于调用进程组I D任一进程。换句话说是与调用 者进程同在一个组进程。...进程而是回收任意一个进程,0表示用默认方式(阻塞式)来进行等待,返回值ret是本次回收进程PID */ /* 等待回收PIDpid这个子进程,如果当前进程并没有一个ID号为...pid进程,则返回值为-1;如果成功回收了pid这个子进程则返回值为回收进程PID */ //ret = waitpid(pid, &status, 0); /* 非阻塞式...此时如果父进程执行waitpid时进程已经先结束等待回收则waitpid直接回收成功,返回值是回收进程PID; 如果父进程waitpid时进程尚未结束则父进程立刻返回(非阻塞),但是返回值为

    3.4K20

    Linux进程控制】五、wait()函数——进程回收

    僵尸进程与孤儿进程 孤儿进程:父进程结束,进程被init进程收养。 僵尸进程进程结束,父进程没有回收进程资源(PCB),这个资源必须要由父进程回收,否则就形成僵尸进程。...*/ 函数描述 wait()函数用于回收进程,获取进程终止原因,如果子进程没有终止,那么将会阻塞等待进程终止。...回收一个组进程,使用时把组ID(一般是父进程ID)传给pid参数,就可以使用waitpid()回收这个进程所有进程。...回收和调用进程组ID相同组内进程。...如果设置了WNOHANG选项,并且没有进程退出则返回0,如果有进程退出则返回退出进程pid。 On error, -1 is returned.

    8410

    探索父进程进程

    : 通过getpid()得到PID和ps指令获取进程PID是一致,都是5258 一个进程属性中,除了有自己进程PID还有父进程PID,ps指令中查询到PPID是当前进程进程PID,可以是用函数...父进程进程 这个父进程PID到底是什么?...先来认识一下fork函数: fork函数会以调用该函数进程作为父进程创建一个进程 创建成功时,会在父进程中返回进程PID,在进程中返回0;如果失败,在父进程中返回-1,没有进程创建。...为什么fork给父进程返回进程PID,给进程返回0 fork之后代码父子共享,返回不同值是为了区分不同执行流。创建父子进程,是为了让父子进程执行不同任务。...一个父进程可以创建多个子进程,为了区分这些进程,fork函数在创建进程后,会给父进程返回进程pid进程只需调用getppid()函数即可找到父进程

    13610

    Nodejs进程

    默认情况下, stdin、 stdout 和 stderr 管道会在父 Node.js 进程和衍生进程之间建立,这些管道容量是有限。...child_process.fork(): 衍生新 Node.js 进程,并调用指定模块,该模块已建立了 IPC 通信通道,可以在父进程进程之间发送消息。...cluster 模块可以创建共享服务器端口进程,因此常常被用作nodejs进程部署,pm2cluster模式就是利用了此方法。...master进程创建一个socket,并绑定监听到该目标端口,通过与进程之间建立IPC通道,调用进程send方法,将socket(链接句柄)传递给进程,大致实现如下。...pm2cluster模式与fork模式区别 浏览器进程与线程梳理 cluster进程重启方案 cluster 模块实现原理

    1.3K20

    C语言Linux系统编程-等待终止进程(僵死进程

    1.等待终止进程(僵死进程): 如果一个进程在父进程之前结束,内核会把子进程设置为一个特殊状态,处于这种状态进程称为僵死进程 当父进程获取了进程信息后,进程才会消失。...pid_t wait(int *status); 父进程调用这个方法会被阻塞住,如果子进程终止时候,此方法会调用并且返回终止进程pid #include #include <unistd.h...ppid=%d ,我新建进程pid=%d\n",pid,ppid,ret); int status; int sonPid=wait...} 输出: 我是父进程pid=22315 , ppid=12479 ,我新建进程pid=22316 我是进程pid=22316 , ppid=22315 我进程pid=22316...,终止了 2.如果父进程进程之前终止了,那么系统会把子进程设置给init进程pid为1),init进程会周期性等待所有的进程,确保没有长时间僵死进程

    3.5K20

    进程进程谁先运行?

    Linux中,父进程进程是并行运行,先运行哪个是不确定,在小红帽系统(Red Hat)中,先运行进程,在ubuntu系统中,父进程是先运行。...其实谁先运行不重要了,一般在编程中,把父进程当做守护进程使用,用一个waitpid(pid,&status,0) != pid 等待进程结束,父进程一直阻塞在这个函数中。...() { pid_t pid, pid_wait; int status; pid = fork(); // 创建进程 if (-1==pid) { // 检查是否创建成功...Child process ID: %d\n", pid); pid_wait = waitpid(pid, &status, 0); // 等待指定进程进程 printf("Child...\n", pid_wait); } return 0; } 结果(Ubuntu中):父进程等待了进程结束 ? 如果喜欢我文章,欢迎关注、点赞和转发,下面可以留言~~~

    3.8K30

    linux根据进程PID查找启动程序全路径

    工作环境中遇到网络不正常,检测是某服务器异常往外发送数据包,使用netstat命令查看,发现有程序.IptabLex这个进程状态为异常连接.无法有效清除,因此想知道是哪个目录此程序处于僵死状态....出问题时进程状态为: [root@edu-web1 /] ps x ?...找到某进程启动路径方法是: 1.我们可以从ps命令中得到僵死进程PID,如上例中23347 2.进入/proc目录下以该PID命名目录中 3.输入ls -ail,结果中 exe链接对应就是可执行文件全路经详细信息...可以发现此连接有异常,对应应用也有问题,剩下就是想办法删除此僵尸进程对应应用程序了,一般都是冗余或垃圾程序,可rm -f 干掉…… 总结 以上所述是小编给大家介绍linux根据进程PID查找启动程序全路径...,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家

    9.7K31

    L010Linux和androidNDK之linux避免僵尸进程进程退出处理

    L010Linux和androidNDK之linux避免僵尸进程进程退出处理 如果你在程序中fork出一个进程,没有好好处理进程退出后相关事宜,那么就有可能召唤出传说中进程僵尸---僵尸进程...,并不能将其完全销毁) 僵尸进程是怎么样产生 在Linux进程状态中,僵尸进程是非常特殊一种,它已经放弃了几乎所有内存空间,没有任何可执行代码,也不能被调度,仅仅在进程列表中保留一个位置,记载该进程退出状态等信息供其他进程收集...参数 pid 为欲等待进程识别码, 其他数值意义如下: pid<-1 等待进程组识别码为 pid 绝对值任何进程pid=-1 等待任何进程,相当于 wait()。...pid=0 等待进程组识别码与目前进程相同任何进程pid>0 等待任何进程识别码为 pid 进程。...main() { //进程pid int c_pid; int pid; signal(SIGCHLD, handler);

    3.1K40

    Linux用ps命令查找进程PID再用kill命令终止进程方法「建议收藏」

    使用linux操作系统,难免遇到一些软件”卡壳”问题,这时就需要使用linux下强大kill命令来结束相关进程。...这在linux系统下是极其容易事情,你只需要kill xxx即可,这里xxx代表与此软件运行相关进程PID号。...首先,我们需要使用linux下另外一个ps命令查找与进程相关PID号:ps aux | grep program_filter_word ps a 显示现行终端机下所有程序,包括其他用户程序...-l:指定信号名称列表。 pid:要中止进程ID号。 Signal:表示信号。 4)说明 进程Linux系统中一个非常重要概念。...监控进程(也称系统守护进程)是Linux系统启动时启动进程,并在后台运行。例如,httpd 是著名Apache服务器监控进程

    3.8K20

    【Android 进程保活】oom_adj 值 ( 简介 | 查询进程 PID | 根据进程 PID 查询 oom_adj 值 )

    文章目录 一、oom_adj 值简介 二、查询进程PID 三、查询进程对应 oom_adj 值 一、oom_adj 值简介 ---- oom_adj 值是 Linux 内核为每个进程分配 , 该值可以反映进程优先级...; 在内存不足 , 要杀进程 , 回收内存时 , 会根据该 oom_adj 值决定是否回收该进程 ; oom_adj 值越大 , 对应进程优先级越低 ; 二、查询进程PID ---- 获取进程号...; PID : 进程 ID ; PPID : 进程父 ID ; VSZ : Virtual Size 缩写 , 进程虚拟内存大小 ; RSS : Resident Set Size 缩写 , 该进程实际驻留在内存中大小...ID , 在 Logcat 面板中 , 进程栏中 , 可以看到 kim.hsl.app2 进程进程 PID 是 11694 ; 在 PS 中对应PID 为 11694 进程 ; u0_a356...oom_adj 值 ; cat /proc/11694/oom_adj 最终查询进程 oom_adj 值为 0 , 说明该进程当前处于前台 , 是前台进程 ; 查下企鹅三个进程 oom_adj

    5.6K30

    LinuxLinux进程控制>进程创建&&进程终止&&进程等待&&进程程序替换

    1.进程创建 1.1 fork函数 在linux中fork函数时非常重要函数,它从已存在进程中创建一个新进程。...新进程进程,而原进程为父进程 #include pid_t fork(void); 返回值:自进程中返回0,父进程返回进程id,出错返回-1 进程调用fork,当控制转移到内核中...1,这时errno会被设置成相应值以指示错误所在; 参数: pidPid=-1,等待任一个进程。...Pid>0.等待其进程ID与pid相等进程。 status: WIFEXITED(status): 若为正常终止进程返回状态,则为真。...(查看进程退出码) options: WNOHANG: 若pid指定进程没有结束,则waitpid()函数返回0,不予以等待。若正常结束,则返回该进 程ID。

    15410
    领券