screen /bin/bash 스크립트를 실행한 다음 대화형 셸로 들어갑니다.

screen /bin/bash 스크립트를 실행한 다음 대화형 셸로 들어갑니다.

.byobu/windows를 사용하여 일부 화면 세션을 시작하고 완료되면 대화형 셸로 종료되는 스크립트를 시작하려고 합니다. 가능합니까?

나는 시도했다:

screen -t test /bin/bash -i /path/to/script
screen -t test /bin/bash - /path/to/script

스크립트 끝에 /bin/bash를 추가할 수 있다는 것을 알고 있지만 쉘에서 스크립트를 실행할 때 솔루션으로 사용하고 싶지 않습니다...

답변1

--rcfile동일한 쉘을 사용하는 것이 중요한 경우 이 플래그를 사용하십시오 .

$ cat test.bashrc 
ls
PS1='TEST \$'
$ screen -t test bash --rcfile test.bashrc -i
a.file  b.file  test.bashrc
TEST $

환경을 설정하는 경우 .bashrc반드시 소스를 확보하세요.

답변2

명령을 실행하고 출력 및 대화형 셸을 화면 내에 두는 유일한 합리적인 방법은 "stuff" 명령을 사용하여 명령을 실행하는 것입니다.

screen -t title1 bash
stuff 'ls /tmp^M'  # in vim type control-v control-m to insert the return at the end

답변3

가능하다면 두 개의 명령만 실행하십시오.

screen -t test /bin/bash /path/to/script; /bin/bash

하나의 명령만 실행할 수 있는 경우 다음을 시도해 보십시오.

/bin/bash -c 'screen -t test /bin/bash /path/to/script; /bin/bash'

관련 정보