
正文
linux获取进程号命令 linux获取进程pid的方法
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
linux 通过哪个命令可以查看某个服务及其端口,进程号
1)使用lsof命令lsof是一个非常强大的linux工具linux获取进程号命令,她被用来查找哪些程序使用了那些文件。在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是进程的命令,中间以'/'号分隔。
和上面的原因一样,linux获取进程号命令我们只查找listen的端口,netstat 给我们提供了-l的选项,这个选项不是默认的选项。
下面以1521端口来看怎么查找到该程序,我们使用下面的命令:
netstat -lnp|awk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}'
在这里使用awk来匹配第4个字段的模式是为了避免误判。
相关问答
Q1: linux 怎么查看某个进程的启动命令
linux下查看某个进程的启动命令的方法:
在Linux下,
如果需要查看进程的启动时间,
常用ps
aux命令,但是ps
aux命令的缺陷在于只能显示时间到年、日期、或者时间,
无法具体到年月日时分秒。如果需要查看某个进程的具体启动时间,
使用
ps
-p
PID
-o
lstart,
其中,PID为某个进程的进程ID号。
如下所示,
显示系统中所有httpd进程的具体启动时间。
for
pid
in
$(pgrep
httpd);
do
echo
-n
"${pid}
"
;
ps
-p
${pid}
-o
lstart
|
grep
-v
"START"
;
done
301
Mon
Aug
27
11:21:59
2012
344
Mon
Aug
27
11:33:13
2012
25065
Sun
Aug
26
03:27:03
2012
25066
Sun
Aug
26
03:27:03
2012
25067
Sun
Aug
26
03:27:03
2012
25068
Sun
Aug
26
03:27:03
2012
25069
Sun
Aug
26
03:27:03
2012
25070
Sun
Aug
26
03:27:03
2012
25071
Sun
Aug
26
03:27:03
2012
25072
Sun
Aug
26
03:27:03
2012
27903
Wed
Jun
20
22:50:47
2012
32767
Mon
Aug
27
11:21:48
2012
由于能力有限只能回答这些,但是建议查看刘遄老师的《linux就该这么学》这本比肩鸟哥私房菜的但与时俱进的工具书
Q2: Linux查看进程命令有哪些
首先我们需要打开终端,本经验以Fedora操作系统为例,其他的操作系统可能略有不同。打开终端之后我们输入ps,它就是我们今天的主角,ps是linux操作系统中最基本同时也是非常强大的进程查看命令,如果你对此命令不是十分了解,我们可以输入ps --help命令来查看此命令的帮助信息。
如何查看linux进程
通过帮助信息我们可以看到,ps命令的相关参数有很多,很多初学的朋友可能会看的一头雾水,不知道该怎么组合这些参数,下面小编就举一些实际应用例子,来介绍一些比较常用的查看进程的固定命令组合。
如何查看linux进程
我们先来看第一个命令,ps -l命令。这个命令和直接使用ps效果类似,但是不同之处在于使用ps命令获得结果很短,而使用-l参数之后将会较长、较详细的列出该PID的的信息列出,由于参数较多,小编就不一一介绍各个参数的含义了,如果想要了解参数的具体含义可以上网查看相关信息。
如何查看linux进程
接着我们来看第二个命令ps aux,有“-”符号和没有两者是有区别的,这个命令应该是比较常用的一个命令,作用就是列出目前所有的正在内存当中的程序,其中a表示显示现行终端机下的所有程序,包括其他用户的程序,u表示以用户为主的格式来显示程序状况,x表示显示所有程序,不以终端机来区分,它的相关参数也不少,例如user,表示属于那个使用者账号的,%CPU表示使用掉的CPU资源百分比,其他的参数小编就不一一的介绍了,有兴趣可以自行查看。
如何查看linux进程
第三个要介绍的命令就是ps -lA命令,跟ps -l命令输出的格式一样,唯一不同的是多了一个A参数,A的作用就是显示出所有进程,因此使用此命令之后输出的结果会非常的多,如果非必要不建议使用此命令。
如何查看linux进程
第四个命令就是ps ajxf,其中a和x表示的意义已经介绍过了,下面我们看下j的意义,j表示采用工作控制的格式显示程序状况,f则表示用ASCII字符显示树状结构,表达程序间的相互关系,输出的结果类似程序树显示。
如何查看linux进程
Q3: linux怎么查询进程和进程的id
用top -u 命令查看进程以及PID。
命令如下linux获取进程号命令:
$ top -u
PID — 进程id
USER — 进程所有者
PR — 进程优先级
NI — nice值。负值表示高优先级linux获取进程号命令,正值表示低优先级
VIRT — 进程使用的虚拟内存总量linux获取进程号命令,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)
linux获取进程号命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux获取进程pid的方法、linux获取进程号命令的信息别忘了在本站进行查找喔。








