
Ubuntu 21.04를 실행 중이고 다음을 수행하는 스크립트를 만들고 싶습니다.
달리다:
cd && cd path/to/repo && git pull && npm i && code . && npm run dev
그런 다음 다음을 사용하여 새 그놈 터미널 탭을 엽니다.
gnome-terminal --tab
그런 다음 이 탭으로 전환하고 다음을 실행합니다.
cd && cd path/to/repo && git reset --hard && git pull -f && npm i && npm run dev
따라서 기본적으로 저는 2개의 개발 서버를 실행하는 2개의 탭이 있는 하나의 터미널을 원합니다.
나는 xdotool
and 로 시도했지만 xte
전혀 작동하지 않았습니다(키도 누르지 않았습니다).
내가 원하는 것을 하는 것이 가능할까요?
아래에서 제안한 대로 시도한 결과 failed to run cd
Google에서 다음과 같은 결과를 얻었습니다.
gnome-terminal --tab -- /bin/bash -e -c "cd path/to/repo && ls && git pull && npm i && code . && npm run dev" --tab -- /bin/bash -e -c "cd path/to/repo && git reset --hard && git pull -f && npm i && npm run dev"
하지만 문제는 이 작업이 npm run dev
절대 중지되지 않아서 두 번째 터미널 탭이 열리지 않는다는 것입니다. 그리고 같이 운영해야 하는데...
답변1
gnome-terminal
옵션이 더 이상 사용되지 않음 을 나타내지 만 -e
3.40.3에서는 여전히 작동합니다.
# Option “-e” is deprecated and might be removed in a later version of gnome-terminal.
# Use “-- ” to terminate the options and put the command line to execute after it.
개발자들은 이것이 원하는 작업, 즉 탭에서 다양한 작업 환경을 자동으로 설정하는 유일한 방법이라는 사실을 잊어버린 것 같습니다. 옵션 끝에 실행할 명령을 추가하는 "새" 구문은 --
이를 허용하지 않습니다. 옵션이 제거 되면 -e
이와 같은 작업을 수행하려면 다른 터미널 에뮬레이터로 이동해야 합니다.
예를 들어 이것은 지금까지 여전히 작동합니다.
gnome-terminal --tab -e "htop" --tab -e "top"
명령을 사용자 정의 스크립트로 htop
바꾸 십시오.top
답변2
sh 스크립트의 내용은 다음과 같습니다.
gnome-terminal --tab --title='frontend' -e "bash -c 'cd path/to/repo && git pull && npm i && code . && npm run dev'";
gnome-terminal --tab --title='backend' -e "bash -c 'cd path/to/repo && git reset --hard && git pull -f && npm i && npm run dev'"
인터넷 검색 방향을 찾는 데 도움을 준 @vanadium에게 감사드립니다;)
의도한 대로 작동합니다. 터미널을 열고 작성하면 sh myScript.sh
백엔드 및 프런트엔드 저장소가 실행 중인 추가 탭 2개가 열립니다.
약간의 문제는 sh 파일을 두 번 클릭하여 실행하면 2개의 터미널 창이 열린다는 것입니다(못생겼지만 탭이 필요합니다).
이 문제를 해결하는 방법을 잘 모르겠습니다.