Windows의 Cygwin에서 프로세스를 종료하는 방법에 관한 문제가 있습니다. 저는 Cygwin을 처음 접했습니다. 그러나 나는 단순히 죽일 수없는 작업이 있습니다. 다음 명령을 시도했습니다.
kill 4568
kill -9 4568
/bin/kill -f 4568
프로세스가 실행되는 Cygwin 터미널에서는 Ctrl + C를 사용할 수 없으므로 별도의 Cygwin 터미널에서 명령을 실행했습니다. 인터넷을 통하지 않고 검색했습니다.
Windows의 Cygwin에서 프로세스를 종료하는 방법에 관한 문제가 있습니다. 저는 Cygwin을 처음 접했습니다. 그러나 나는 단순히 죽일 수없는 작업이 있습니다. 다음 명령을 시도했습니다.
kill 4568
kill -9 4568
/bin/kill -f 4568
프로세스가 실행되는 Cygwin 터미널에서는 Ctrl + C를 사용할 수 없으므로 별도의 Cygwin 터미널에서 명령을 실행했습니다. 인터넷을 통하지 않고 검색했습니다.
답변:
시도해 볼 수 있습니다 :
taskkill /pid 4568
taskkill /im:{name-of-executable}유용합니다.
taskkill /im <name-of-exe> /f더욱 유용하다.
taskkill //im <name-of-exe>(두 개의 슬래시가 필요함)
BASH 전용 솔루션을 원하면 다음을 시도하십시오.
KILLPS="<My Process Name>"
WINPS=`ps -W | grep -i $KILLPS` # Make case-insensitive.
PID=`echo $WINPS | cut -d' ' -f1`
/bin/kill -f "$PID"
참고 : / bin / kill을 사용하면 내장 쉘 강제 종료가 일반 Windows 프로세스의 PID를 종료하지 않습니다.
여기서 고려해야 할 두 가지 :
올바른 WINPID를 강제 종료하려면을 사용하십시오 cat /proc/<PID>/winpid. 즉, 이것을 실행하십시오 :
ZID=$$; WINPID=$(cat /proc/${ZID}/winpid); echo "Kill WINPID: ${WINPID}"; ps; sleep 10 &
즉시 다른 작업을 수행합니다 ps.
사용할 올바른 도구는 sysinternals PsKill64.exe -t <winpid> 이며 스크립트 프로세스의 모든 하위 항목도 제거합니다 kill.
cat /proc/${ZID}/winpid. ps -aW | grep ...적어도 Win 7 x64의 cygwin에서는 솔루션보다 빠릅니다 . 그러나 PsKill64의 경우 -t하위 프로세스 를 종료해야 하며 하위 프로세스 taskkill도 종료 할 수 있다고 생각합니다 .
-t자손을 죽여야합니다. 정답.
Git Bash에서는 다음을 사용합니다.
targetProcess='chromedriver.exe';
ps -W | grep -i ${targetProcess} | awk '{print $1}' | while read pid; do taskkill //PID ${pid}; done;
Cygwin에서는 시도하지 않았지만 Cygwin에서도 작동한다고 가정합니다.