쉘 스크립트의 일부 매개변수를 사용하여 두 개의 독립적인 병렬 gnome 터미널 창을 실행하고 싶습니다.
지금까지 나는 이것을 얻었습니다 :
#!/bin/sh
gnome-terminal -e window1.sh &
gnome-terminal -e window2.sh &
exit
그런데 실행 후 화면이 깜박거리며 사라집니다. 두 가지 모두 나타나서 키 입력을 기다린 다음 일반 터미널 창처럼 계속 작동할 것으로 예상합니다. 즉, 계속해서 명령을 입력할 수 있어야 합니다.
이것은 window1.sh + window2.sh의 코드입니다.
#!/bin/sh
echo window
read -p "press any key to continue"
나는 그들이 왜 "읽기"를 존중하지 않고 입력을 기다리지 않는지 이해하지 못합니다.
답변1
스크립트를 단독으로 실행합니다.
./window1.sh
이 출력을 얻게 됩니다.
window
press any key to continue./window1.sh: 3: read: arg count
명령이지 명령이 아니기 read
때문 이다 .bash
sh
답변2
스크립트가 실행 가능하며 $PATH
?
gnome-terminal -e ./window1.sh &
또한 스크립트가 유사하다면 한 번만 작성하고 하나의 매개변수를 매개변수로 전달하세요.
gnome-terminal -e ./window.sh 1 &
gnome-terminal -e ./window.sh 2 &
"$@"
각각 개별적으로 인용된 명령줄 매개변수로 확장됩니다. "$1"
첫 번째 매개변수 등입니다.