답변:
모든 POSIX 호환 시스템 및 Linux에서 다음을 사용할 수 있습니다 ps
.
ps -p 1337 -o comm=
여기서 프로세스는로 PID에 의해 선택됩니다 -p
. 이 -o
옵션 comm
은 명령 형식을 의미하는 출력 형식을 지정합니다 .
command
대신 사용하면 문제 가 해결됩니다.
$ ps -p 1 -o comm=
init $ ps -p 1 -o command=
/ sbin / init; 이것은 약 15자가 아니라 바이너리 이름과 전체 경로 일 수 있음을 의미합니다.
comm
이진의 이름을 제공하고 command
인수 0을 반환
프로세스 이름 또는 process-id 또는 pid가 사용하는 명령을 찾을 수 있습니다.
/proc/pid/cmdline
함으로써
cat /proc/pid/cmdline
여기서 pid는
예를 들어 Formaple 이라는 이름을 찾으려는 pid입니다 .
# ps aux
................
................
user 2480 0.0 1.2 119100 12728 pts/0 Sl 22:42 0:01 gnome-terminal
................
................
pid 2480에서 사용하는 프로세스 이름을 찾으려면
# cat /proc/2480/cmdline
gnome-terminal
ps -a
터미널과 관련된 모든 프로세스를 나열합니다. 입력을받지 않습니다.
ps
버전에 의존한다고 생각합니다 procps version 3.2.7
.
pmap을 사용할 수 있습니다. PID 6649를 검색 중이며 추가 프로세스 세부 정보를 차단했습니다.
$ pmap 6649 | head -1
6649: /usr/lib64/firefox/firefox
ps
명령 만 표시 java
하면되지만 전달 된 나머지 매개 변수는로 완전히 표시됩니다 pmap
.
ps와 함께 awk를 사용할 수도 있습니다
ps aux | awk '$2 == PID number for a process { print $0 }'
예:
root@cprogrammer:~# ps aux | awk '$2 == 1 { print $0 }'
root 1 0.0 0.2 24476 2436 ? Ss 15:38 0:01 /sbin/init
HEAD LINE을 인쇄하려면
ps --headers aux |head -n 1 && ps aux | awk '$2 == 1 { print $0 }'
(or)
ps --headers aux |head -n 1; ps aux | awk '$2 == 1 { print $0 }'
root@cprogrammer:~# ps --headers aux |head -n 1 && ps aux | awk '$2 == 1 { print $0 }'
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.2 24476 2436 ? Ss 15:38 0:01 /sbin/init
ps ax | grep 1
하고 정말 반환 여부를 확인 init
, 예를 들어, 프로세스를. (제 경우에는 119 줄을 반환합니다. 바람직하지 않습니다.)
ps aux | awk 'NR==1 || $2==PID'
말할 필요가 없습니다 {print $0}
. 그러나 당신이 언급 한대로 -p
어쨌든 더 좋습니다.
Simmilar to slhck 's Answer , 그러나 명령 호출 대신 파일 작업에 의존합니다.
MYPID=1
cat "/proc/$MYPID/comm"
cat /proc/1/comm
=> / sbin / init가 아닌 init. 그의 대답에는 더 긴 버전이 포함되어 있습니다. 그러나 어쨌든 +1.
놀랍게도 ps에 대한 -f (전체 명령) 옵션을 언급 한 사람은 없습니다. 나는 그것을 -e (모든 것)와 함께 사용하고 결과를 grep으로 파이프하여 검색 범위를 좁힐 수 있습니다.
ps -ef | grep <PID>
또한 시스템에서 많은 리소스를 사용하는 누군가가 실행중인 전체 명령을 보는 데 매우 유용합니다. 명령에 전달 된 옵션과 인수가 표시됩니다.
-e -f
사용할 수 있으며, grep
예를 들어, 많은 거짓 일치를 생성 할 수 있습니다 grep 33
포함 PID = 933 또는 339, PPID = 33 초 33 분, programName을 또는 인수가 (33)를 포함하는의 timeused 33 또는 933 또는 339 -을 포함하여 grep
자체. 모든 (AFAIK)을 ps
해야합니까 -p
, 그래서 그냥, ps -fp 33
.
다음 명령을 사용하는 가장 쉬운 방법을 찾으십시오.
ps -awxs | grep pid
ps -p${pid}
,이를 포함하여 많은 오 탐지가 발생 grep
합니다.
PID를 찾고 bash 스크립트 내에서 사용하는 간단한 스크립트를 만들었습니다 ...
주의해서 사용하십시오 !!
스크린 샷 : http://pastebin.com/Cm9YH67U
안드레
ps
또는ls -l /proc/$PID/exe