라즈베리파이를 사용하다가 이상한 점을 발견했습니다.
옵션 없이 pkill을 사용하면 이후에 같은 줄에서 다른 명령을 실행할 수 있지만 -f 옵션을 사용하면 후속 명령이 무시됩니다. 이유를 아는 사람 있나요?
$ ssh [email protected] "pkill -f blablabla ; echo yeaaaah"
[email protected]'s password:
$ ssh [email protected] "pkill blablabla ; echo yeaaaah"
[email protected]'s password:
yeaaaah
blablabla 프로세스가 존재하는지 여부는 차이가 없습니다.
답변1
명령줄의 어느 위치에서든 일치하는 것이 -f
허용되므로 원격 셸의 인수 목록에서 일치하여 종료됩니다.pkill
blablabla
대신 실행하면 무슨 일이 일어나고 있는지 확인할 수 있습니다 pgrep -af
.
$ ssh [email protected] "pgrep -af blablabla ; echo yeaaaah"
[email protected]'s password:
29223 bash -c pgrep -af blablabla ; echo yeaaaah
yeaaaah