문제

여러 서비스로 구성된 서버 측 프로젝트를 진행하고 있습니다. 각 서비스는 대화식 (IE 비 데몬) 모드로 실행되며 활성 개발 중에 편리합니다. 이 프로젝트는 VirtualEnV에 있습니다. 따라서 서비스를 시작하는 일반적인 방법은 다음과 같습니다.

$ cd ~/to/vitualenv/subdir/where/service/code/located
$ source ../path/to/virtualenv/bin/activate
$ ./script-to-start-service
+ Set title of terminal to the service name via GUI

2-3 개의 서비스가 있으면 괜찮을 것입니다. 그러나 우리는 12 개가 있습니다. 컴퓨터 재부팅 후에 모든 것을 다시 시작하는 것은 진정한 고통입니다.

그래서 내가 원하는 것은 스크립트입니다. 한 번 실행되면 한 번 실행되면 새 그놈-말단 창 (서비스 당 하나의 탭 1 개)이있는 새로운 그놈-터미널 창을 열고 해당 탭에서 활성화 된 virtualEnV가 활성화되어 있습니다. 지금까지 얻은 가장 좋은 결과는 다음과 같습니다.

$ gnome-terminal --working-directory=~/to/vitualenv/subdir --window --tab --tab

-타이틀과 --profile은 무시 된 것처럼 보이고--명령이 지정된 경우 새로 열린 창이 열린 직후에 닫힙니다.

어떤 아이디어? 활성화 스크립트를 소스하고 제목을 부여하고 서비스를 실행하는 방법은 무엇입니까?

추신 : 실제 서버에 배포가 아니라 개발 목적으로 만 사용됩니다.

도움이 되었습니까?

해결책

다음은 저를 위해 작동하고 요청한 일을 수행합니다.

gnome-terminal --working-directory=/path/to/wd --tab-with-profile=profile1 --title=title1 -e 'bash --rcfile /path/to/rcfile1.sh' --tab-with-profile=profile2 --title=title2 -e 'bash --rcfile /path/to/rcfile2.sh'

다른 팁

"service"(edit> profiles> new)라는 그놈 말단 프로파일을 만듭니다.

편집> 프로파일 기본 설정> 제목 및 명령> 내 쉘 대신 사용자 정의 명령을 실행하고 사용자 정의 명령을 다음과 같이 설정하십시오.

bash --rcfile ../path/to/virtualenv/bin/activate

그런 다음 그놈 말단을 사용하여 서비스를 시작하십시오. 다음 명령은 두 가지 인스턴스를 시작합니다 yes 다른 디렉토리의 탭에서. 명령을 세 줄로 나누었지만 한 줄로 입력해야합니다.

gnome-terminal
--tab-with-profile=service --working-directory=/home/$USER/data --title="feelgood" --command="yes"
--tab-with-profile=service --working-directory=/code --title="negative" --command="yes no"

Activate를 직접 호출하는 대신 사용자 정의 명령으로 사용할 파일을 만들 수 있습니다.

source ~/.bashrc
source ../path/to/virtualenv/bin/activate

변경 디렉토리와 같은 명령을 추가하거나 서비스를 시작할 수도 있습니다. 해당 프로필로 터미널을 열 때마다 해당 명령이 실행됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top