스크립트를 로컬에서 실행해야 합니다. 문제는 screen
ctrl d 명령을 사용하고 보내야 한다는 것입니다.
어떻게 해야 합니까? 스크립트는 내 로컬 Windows 컴퓨터에 있습니다. Winscp, Putty, mingw 및 기타 응용 프로그램을 사용할 수 있습니다.
답변1
당신은 그것을 사용할 수 있습니다예상되는(홈페이지 기대됩니다, 대부분의 UNIX 소프트웨어 배포판에 포함됨)을 사용하여 텍스트 터미널에서 실행되는 프로그램과의 상호 작용을 스크립트로 작성합니다.
그러나 원하는 작업을 수행하는 더 쉬운 방법이 있을 수 있습니다. 모든 명령줄에서 screen 세션에 명령을 보낼 수 있으며, screen의 stuff
명령을 사용하여 화면 창에 입력을 삽입할 수 있습니다. 바라보다-X를 통해 전달된 명령에 대해 화면이 아무 작업도 수행하지 않는 것처럼 보이는 이유는 무엇입니까?,외부에서 스크린 세션에 입력 보내기몇 가지 예를 들어보세요.
screen -S sessionname -p windowname -X stuff $'\004'
이 답변이 도움이 되지 않는다면, 귀하가 원하는 작업에 대한 추가 정보를 제공해 주시기 바랍니다.
답변2
화면의 수동(1)
-d|-D [pid.tty.host] does not start screen, but detaches the elsewhere running screen session. It has the same effect as typing "C-a d" from screen’s controlling terminal. -D is the equivalent to the power detach key. If no session can be detached, this option is ignored. In combination with the -r/-R option more powerful effects can be achieved:
저는 일반적으로 screen -AmdS sessionname commandline
스크린 세션에서 명령줄을 실행하고 즉시 분리하는 데 익숙합니다. 예를 들어 cronjob에서 screen을 실행합니다.
@reboot /usr/bin/screen -AmdS shoutcast /home/foo/sc_serv /home/foo/sc_serv.conf
기존 분리된 화면에 새로운 명령을 추가하고 즉시 분리하세요.
screen -dr sessionname -X commandline
답변3
당신의 합의는 나에게 의미가 없습니다. 화면 외부에서 화면으로 키를 보내는 방법을 묻고 있습니까? 이 시나리오를 사용할 수 있습니다 expect
. 사용자 정의 프로필 시작 화면을 사용하고 Ctrl-D를 보내기 쉬운 것으로 변경할 수도 있습니다.