Linux에서 최근 실행 중인 애플리케이션의 PID를 찾는 방법은 무엇입니까?

Linux에서 최근 실행 중인 애플리케이션의 PID를 찾는 방법은 무엇입니까?

안녕하세요, 최근에 어플리케이션이나 어플리케이션을 실행했는데 CPU 상태 정보를 알고 싶어서 최근에 실행한 어플리케이션의 PID가 필요합니다. 하지만 /proc 디렉토리에 PID가 너무 많아서 최근에 실행한 "my-example" 애플리케이션 바이너리와 같은 특정 애플리케이션의 PID를 어떻게 알 수 있습니까?

답변1

프로세스 관리를 위한 몇 가지 명령줄 도구를 확인할 수 있습니다.

  • pidof <name>예를 들어 , 를 사용하여 pidof bash프로그램 이름이 지정된 프로세스의 PID를 얻을 수 있습니다 .
  • ps -aux시작 시간 및 PID와 함께 현재 실행 중인 프로그램 목록을 가져오는 데 사용할 수 있습니다 . 목록에서 프로그램을 찾을 수 있습니다.
  • ps -eafx모든 명령줄 옵션을 표시하는 실행 중인 프로그램 목록을 얻는 데 사용할 수 있습니다 . 아마도 프로그램에서 찾고 있는 특정 명령줄 옵션이나 매개변수를 찾을 수 있을 것입니다.
  • pgrep [options] <patterns>여러 기준을 사용하여 프로세스를 찾을 수 있습니다. 실행하면 pgrep --help모든 옵션을 볼 수 있습니다.

답변2

대화형 명령줄 도구를 사용하면 htop프로세스를 검색(F3)하고 일부 기본 CPU 정보와 PID를 직접 얻을 수 있습니다.

답변3

첫 번째 변종

터미널에서 다음과 같이 애플리케이션을 실행하세요.

$ my-example &      # put the program in the background
$ echo $!           # print the program's PID

$!- 가장 최근에 백그라운드에 추가된 작업의 프로세스 ID로 확장됩니다.

자세한 내용은 man bash다음을 참조하세요.특수 매개변수부분.

두 번째 변형

애플리케이션이 이미 시작된 경우 실행하면 PID가 pgrep my-example반환됩니다 .my-example

관련 정보