2014-11-09 3 views
-1

이름으로 processid를 가져오고 ssh를 통해 원격으로 다른 시스템에서 나열한 모든 프로세스를 종료하려면 명령을 실행하고 싶습니다. 아래 명령을 실행 중입니다.ssh를 통해 이름으로 원격 명령을 삭제할 수 없습니다.

ssh [email protected] "kill -SIGINT `ps -ef | grep <process name> | awk '{print $2}'`" 

그러나 원격 컴퓨터를 확인하는 대신 프로세스 이름을 로컬에서 확인하고 있습니다.

이 명령이 제대로 작동하지 않는 이유에 대해 도와 줄 수 있습니까?

답변

1

당신은 훨씬 더 간단하게 수행 할 수 있습니다

ssh [email protected] "pkill -INT <process name>" 

pkill에 대한 -f 옵션을 참조하십시오.

1

큰 따옴표는 명령이 호출되기 전에 셸에 의해 해석됩니다. 매개 변수를 작은 따옴표로 묶어야합니다.

ssh [email protected] 'kill -SIGINT `ps -ef | grep <process name> | awk "{print \$2}"`' 
관련 문제