프로그램의 pid를 한 줄씩 가져옵니다.

프로그램의 pid를 한 줄씩 가져옵니다.

다음과 같은 명령을 실행하여 프로그램 인스턴스의 pid를 찾을 수 있습니다.

pidof avconv

이것은 나에게 결과를 제공합니다

16616 16283 16279 16198 16175 16035 15073 14049 4922

그러나 다음과 같이 동일한 결과를 한 줄씩 출력하려면 어떻게 해야 합니까?

16616 
16283 
16279 
16198 
16175 
16035 
15073 
14049 
4922

답변1

@Sobrique의 제안을 사용하여 출력을 구문 분석 sed하거나 다음을 사용할 수 있습니다 tr.

pidof avconv | tr ' ' '\n'

또 다른 방법은 다음을 사용하는 것입니다 pgrep.

$ pgrep avconv16616 
16283 
16279 
16198 
16175 
16035 
15073 
14049 

답변2

이렇게 시작하시면 됩니다...

ps -C avconv -o pid=

답변3

다음을 사용하여 언제든지 sed개행 문자를 삽입 할 수 있습니다.

pidof avconv | sed 's/ /\n/g'

아마도 더 큰 질문은 - 왜 다른 줄에 배치해야 합니까? 어쩌면 더 적절한 대답이 있을 수도 있습니다.

답변4

Linux 시스템을 사용하는 경우 pidof해당 옵션을 사용하여 공백 대신 개행 문자를 구분 기호로 사용하도록 유틸리티에 지시할 수 있습니다 -d.

pidof -d $'\n' /usr/sbin/apache2

관련 정보