2016-10-07 27 views
0

일부 명령을 실행하려고하는데 그 중 하나가 콘솔로 돌아 오지 않고 ctrl + c를 사용하여 명시 적으로 가져와야합니다. 그 후 나는 그 스크립트에서 좀 더 많은 명령을 실행할 필요가있다.expect 스크립트 실행 중 인터럽트/ctrl C를 보내는 방법

expect "$ " 
send "sh /root/jboss-eap-6.3/bin/standalone.sh\r" 
set timeout 10 

expect "$ " 

standalone.sh 스크립트를 실행 한 후에 다른 명령을 실행해야합니다. 그러나 그것은 보류 할 것이고 콘솔로 되돌아 가지 않을 것입니다. 시도했습니다.

trap { 
    send \x03 
    send_user "You pressed Ctrl+C\n" 
} SIGINT 

그러나 그것은 또한 효과가 없었습니다.

미리 감사드립니다.

답변

0

bash에서 프로세스를 죽이는 데는 여러 가지 방법이 있습니다. 혹시 (jboss eap) 프로세스의 이름을 알고 있다면 키 스트로크를 보내는 대신 pkill processName, killall processName 또는 kill pidof processName을 실행할 수 있습니다.

+0

저는 프로세스를 죽이고 싶지 않습니다. 프로세스를 시작하고 아무런 변화가없는 시점에 올 것입니다. 나는 단지 그것에서 나와야한다. – Karthik

+0

"빠져 나오라"는 "죽이기"와 매우 흡사합니다. – Hampus