아무 작업도 수행하지 않는 이름으로 프로세스를 시작하려면 어떻게 해야 합니까?

아무 작업도 수행하지 않는 이름으로 프로세스를 시작하려면 어떻게 해야 합니까?

아무것도 하지 않고 계속 실행 중인 프로세스를 시작하고 싶습니다. 라는 프로세스를 시작한다고 가정해 보겠습니다 sadhadxk. 이를 실행하면 pgrep -x "sadhadxk"일반 프로세스와 마찬가지로 PID 번호를 얻습니다.

그렇다면 가상 프로세스를 시작하는 방법이 있습니까?

답변1

다음을 수행할 수 있습니다.

perl -MPOSIX -e '$0="sadhadxk"; pause' &

이를 지원하는 시스템에서 프로세스 이름과 argv[0]을 설정해야 하므로 및 출력 sadhadxk에 표시되고 ps및 와 일치해야 합니다 ps -f.pgrep -xpgrep -fx

답변2

> bash -c 'exec -a sadhadxk sleep 1000000' &

pgrep작동하지 않지만

> ps | grep '[s]adhadxk'
18931  [...] sadhadxk 1000000

수정: pgrep작동하지만 명령 이름(실행 중인 바이너리의 이름)에서는 작동하지 않고 명령줄에서만 작동합니다.

> pgrep -f sadhadxk
18931

답변3

이 시도:

sleep 600 &

관련 정보