python 은 프로 세 스 이름 에 따라 프로 세 스 의 pid 를 가 져 오 는 표준 라 이브 러 리 를 사용 합 니 다.

머리말
표준 라 이브 러 리 는 Python 의 구성 부분 입 니 다.이 표준 라 이브 러 리 들 은 Python 이 당신 을 위해 준비 한 이기 로 프로 그래 밍 에 적은 노력 으로 큰 효 과 를 거 둘 수 있 습 니 다.특히 프로 세 스 의 pid 를 가 져 와 야 할 때 도 있 지만 제3자 라 이브 러 리 를 사용 할 수 없 을 때 도 있 습 니 다.다음은 더 이상 할 말 이 없 으 니 상세 한 소 개 를 해 봅 시다.
방법 은 Liux 플랫폼 에 적 용 됩 니 다.
방법
subprocess 의 check 사용 하기output 함수 pidof 명령 실행

from subprocess import check_output
def get_pid(name):
 return map(int,check_output(["pidof",name]).split())
 
In [21]: get_pid("chrome")
Out[21]:
[27698, 27678, 27665, 27649, 27540, 27530,]
방법
pgrep 명령 을 사용 하면 pgrep 에서 얻 은 결 과 는 pidof 에서 얻 은 결과 와 조금 다 릅 니 다.pgrep 의 프로 세 스 id 가 몇 개 더 있 습 니 다.pgrep 명령 은 subprocess 를 적용 하 는 checkout 함수 실행

import subprocess<br data-filtered="filtered">def get_process_id(name):
 """Return process ids found by (partial) name or regex.
 
 >>> get_process_id('kthreadd')
 [2]
 >>> get_process_id('watchdog')
 [10, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61] # ymmv
 >>> get_process_id('non-existent process')
 []
 """
 child = subprocess.Popen(['pgrep', '-f', name], stdout=subprocess.PIPE, shell=False)
 response = child.communicate()[0]
 return [int(pid) for pid in response.split()]
방법
/proc 디 렉 터 리 에 있 는 파일 을 직접 읽 습 니 다.이 방법 은 셸 을 시작 할 필요 가 없습니다./proc 디 렉 터 리 에 있 는 파일 만 읽 으 면 프로 세 스 정 보 를 얻 을 수 있 습 니 다.

#!/usr/bin/env python
 
import os
import sys
 
 
for dirname in os.listdir('/proc'):
 if dirname == 'curproc':
  continue
 
 try:
  with open('/proc/{}/cmdline'.format(dirname), mode='rb') as fd:
   content = fd.read().decode().split('\x00')
 except Exception:
  continue
 
 for i in sys.argv[1:]:
  if i in content[0]:
   print('{0:<12} : {1}'.format(dirname, ' '.join(content)))<br data-filtered="filtered"><br data-filtered="filtered">

phoemur ~/python $ ./pgrep.py bash
1487   : -bash 
1779   : /bin/bash
4,현재 스 크 립 트 의 pid 프로 세 스 가 져 오기

import os
 
os.getpid()
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가치 가 있 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기