터미널을 닫지 않고 스크립트를 실행하는 방법은 무엇입니까? 내가하면 클릭 거기에, 스크립트가 실행되고

파일에 스크립트 bla.sh가 있으며 실행 파일입니다. 내가하면 클릭 거기에, 스크립트가 실행되고 창이 닫힙니다. 창문을 열어두고 싶습니다 .

cmd /k** commandWindows의 명령과 같은 것 .

PS는 내가 하지 않습니다 사용하려면 pause,하지만 난 스크립트가 실행 된 후 명령을 더 쓸 수 싶어요.



답변

$SHELL스크립트 끝에 넣으십시오 .

작은 결함 : 쉘처럼 gnome-terminal실행되지 않기 때문에 bash응용 프로그램으로 간주 하고 터미널을 닫으려고 할 때 경고표시합니다 .

There is still a process running in this terminal
Closing the terminal will kill it.

이 경고를 숨길 수있는 좋은 방법을 찾지 못했습니다. 원하는 경우 다음을 실행하여 완전히 비활성화 할 수 있습니다.

gconftool --set /apps/gnome-terminal/global/confirm_window_close --type boolean false

xtermgnome-terminal 대신에 사용 하는 경우에는 발생하지 않습니다 . 당신을 귀찮게해야합니다.


답변

그놈 터미널 사용

명령 문자열 끝에; bash를 추가하고 gnome-terminal을 추가하면 -c 옵션과 함께 스크립트를 호출 할 수 있습니다. 예를 들면 다음과 같습니다.

gnome-terminal -e "bash -c ~/script.sh;bash"

이것은 다음을 수행합니다.

  1. 그놈 터미널을 엽니 다
  2. 스크립트 script.sh를 실행합니다
  3. 스크립트가 완료된 후 bash 프롬프트를 표시합니다.

창을 닫거나 bash 프롬프트에서 exit를 입력하여 그놈 터미널 창을 종료 할 수 있습니다. 또는 요청에 따라 더 많은 명령을 입력 할 수 있습니다.


답변

사용 xterm중인 경우을 사용하십시오 -hold.


답변

스크립트에 액세스 할 수있는 경우 끝에 다음 코드를 추가 할 수도 있습니다.

read

이 코드는 입력을 닫기 전에 입력을 기다리므로 Enter를 누를 때까지 터미널이 열린 상태로 유지됩니다.


답변

임시 파이프와 함께 bash--init-file옵션을 사용하십시오 .

bash --init-file <(echo './<script_name>')

전의:

bash --init-file <(echo './bla.sh')

답변

명령 문자열 끝에 사용 xterm하고 추가 하면 ;bash작동합니다. 예를 들면 다음과 같습니다.

xterm -e "bash ~/script.sh;bash"

이것은 다음을 수행합니다.

  1. xterm을 엽니 다
  2. 스크립트를 실행 script.sh
  3. 스크립트가 완료된 후 bash 프롬프트를 표시합니다.

창을 닫거나 exitbash 프롬프트에서 입력하여 xterm 창을 종료 할 수 있습니다 . 또는 요청에 따라 더 많은 명령을 입력 할 수 있습니다.


답변

xterm -e bash --rcfile bla.sh

그러면 새 창에서 스크립트가 실행되고 완료된 후에 창을 제어 할 수도 있습니다.

그러나 ~/.bashrc우리가 bla.sh대신 실행했기 때문에 새 창이 정상적으로 로드되지 않습니다 . 이것은 넣어서 해결할 수 있습니다

. ~/.bashrc

~의 상단에 bla.sh