linux 查看进程由哪个进程启动

作者&投稿:帛狐 (若有异议请与网页底部的电邮联系)
linux查看某个进程是哪个程序运行的~

可以用管道啊什么的,如果a.out是你写的,在a.out里新建个管道,当它启动时,发个消息,让b.out接收这个管道的消息,接收到了就说明a启动了。如果a.out不是你写的,那我就不会了,哈,希望帮到你。刚接触LINUX

1、查看进程“打开”的文件 (方法1):
1)pidof programe-name(获得想了解的进程(programe-name)的PID)
或ps -aux|grep programe-name(获得想了解的进程(programe-name)的PID)
找出进程的PID
2)cd /proc/$PID/fd(会看见文件描述符)
3)ls -l 得到文件描述符指向的实际文件,即当前进程打开的文件
2、查看进程“打开”的文件 (方法2):
1)获得想了解的进程的PID方法同上
2)lsof -c programe-name
或lsof -p $PID

1)使用lsof命令 lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件。在linux系统下,基本上所有的东西都可以被当作文件来用。socket当然也是一种文件了。所以lsof可以用来查找谁用了某一个端口。具体方法: lsof -i :port_number grep "(LISTEN)" -i是用来查找和网络相关的文件,":"号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否 有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。 如果只有losf -i :port_number可能会查到很多应用程序,但这些程序实际并没有占用你指定的端口,这些端口只是连接到本机器或者别的机器的该端口。所以要grep "(LISTEN)“,因为一个端口只可能被一个程序占用的,所以这种方法是可靠的。 2)使用netstat 命令 大家一定对这个命令比较熟悉了,可能你从没有想到用到来查找哪一个程序的占用了指定的端口。但是netstat -an 的确提供了这种功能。所以有问题了一定要想到先去查找man手册,不过说实话,某些man手册写得让中国人看不懂,那没有办法了,就googe或者 baidu一下吧。 执行man netstat命令,你会发现netstat 提供了'-p'的选项,这个选项的功能是告诉你哪个程序占用了该端口,但是她提供的形式比较古怪是以pid/process_name提供的。pid当然 是进程id了,process_name是进程的命令,中间以'/'号分隔。 和上面的原因一样,我们只查找listen的端口,netstat 给我们提供了-l的选项,这个选项不是默认的选项。 下面以1521端口来看怎么查找到该程序,我们使用下面的命令: netstat -lnpawk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}' 在这里使用awk来匹配第4个字段的模式是为了避免误判。


南丹县17279263952: linux 查看进程由哪个进程启动 -
窄阎谷氨: 1)使用lsof命令 lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件.在linux系统下,基本上所有的东西都可以被当作文件来用.socket当然也是一种文件了.所以lsof可以用来查找谁用了某一个端口.具体方法: lsof -i :port...

南丹县17279263952: linux查看某个进程是哪个程序运行的 -
窄阎谷氨: 可以用管道啊什么的,如果a.out是你写的,在a.out里新建个管道,当它启动时,发个消息,让b.out接收这个管道的消息,接收到了就说明a启动了.如果a.out不是你写的,那我就不会了,哈,希望帮到你.刚接触LINUX

南丹县17279263952: linux中查看进程在哪个cpu上运行 -
窄阎谷氨: ps命令的输出格式可以通过-o参数定制,可以使用如下命令显示进程所对应的执行CPU: # ps -eo pid,args,psr 参数的含义: pid - 进程ID args - 该进程执行时传入的命令行参数 psr - 分配给进程的CPU

南丹县17279263952: linux 查看文件被哪个进程打开 -
窄阎谷氨: 可以使用:ps -fe|grep filename,也可以使用:fuser filename查看 然后可以看这个进程跟哪里东西有关联,使用了哪些端口 只查看该进程:ps -ef | grep ID 查看该进程打开的文件:lsof -p ID 查看内存分配:lcat /proc/ID/maps 查看堆栈:pstack 11ID 查看发出的系统调用:strace -p ID 查看调用库函数:ltrace -p ID

南丹县17279263952: 简述linux进程的启动、终止的方式以及如何进行进程的查看.
窄阎谷氨: 在Linux中启动一个进程有手工启动和调度启动两种方式: (1)手工启动 用户在输入端发出命令,直接启动一个进程的启动方式.可以分为: ①前台启动:直接在SHELL中输入命令进行启动. ②后台启动:启动一个目前并不紧急的进程,如打印进程.

南丹县17279263952: Linux 怎样知道某个进程在哪个CPU上运行 -
窄阎谷氨: 输入命令:# ps -eo pid,args,psr 参数的含义:pid - 进程ID args - 该进程执行时传入的命令行参数 psr - 分配给进程的CPU 有关ps命令的其它信息请查阅ps手册:# man ps 关于更多Linux的学习,请查阅书籍《linux就该这么学》.

南丹县17279263952: 怎么查看linux正在运行的服务 -
窄阎谷氨: 1. 首先查看系统运行的进程2. 若需要查看系统当前运行的就需要用如下命令:3. # ps auxw4. 其中参数a表示显示系统中所有用户的的进程;u表示输出进程用户所属信息; x表示也5. 显示没有控制台的进程;若显示行太长而被截断则可以使用f参...

南丹县17279263952: linux怎么查看某个进程是否启动 -
窄阎谷氨: 查看所有进程: 1.ps -ef 2.ps -aux e = all processes 显示所有进程 f = full全格式 a = show processes for all users 显示所有用户的进程u = display the process's user/owner 显示用户x = also show processes not attached to a terminal ...

南丹县17279263952: linux 怎么查看某个进程的启动命令? -
窄阎谷氨: 一般进程名就是启动名,特殊进程除外,需要加参数或者需要其他进程联动,或者由其他父进程生成,具体的要自己找.

南丹县17279263952: 如何查看linux后台运行程序的父进程 -
窄阎谷氨: ps -ef | grep PID 看输出结果,第三列就是父进程PPID

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网