tmux, gnome-terminal 또는 xfterminal에서 여러 명령을 동시에 시작하고, 각 탭에 대해 하나의 명령을 실행하고, 명령이 완료되면 탭을 닫고 싶습니다.
다른 소프트웨어도 환영합니다
XX "cmd1" "cmd2" "cmd3"과 같은 작업을 수행하기 위해 스크립트를 내보내고 싶습니다.
답변1
tmux 세션을 열고 첫 번째 명령을 시작합니다. 그런 다음 새 창에서 더 많은 명령을 시작하고 마지막에 창 크기를 균등하게 분배합니다.
tmux \
new-session "command1 ; read" \; \
split-window "command2 ; read" \; \
split-window "command3 ; read" \; \
split-window "command4 ; read" \; \
select-layout even-vertical
각 명령 후에는 read
명령이 완료된 후에도 출력을 읽을 수 있도록 창이 열린 상태로 유지됩니다.
답변2
tmux new -d -s my-session 'echo window-1 pane-1; sleep 8' \; \
split-window -d 'echo window-1 pane-2; sleep 6' \; down-pane \; \
new-window -d 'echo window-2; sleep 4' \; next-window \; \
attach \;
위는 일반적인 아이디어의 실행 예입니다. 자세한 내용은 다음을 참조하세요.단일 스크립트로 분할 화면 X 터미널에서 Streamripper 및 mplayer를 실행하는 방법
답변3
프로그램 구성이 항상 동일하다면 다음과 같은 도구를 사용할 수 있습니다.티모시.
~/.teamocil/sample
예를 들어 다음 콘텐츠가 포함된 구성으로 생성 해야 합니다 .
windows:
- name: my-first-window
root: ~/Projects/foo-www
filters:
before: "rvm use 1.9.2"
after: "echo 'I am done initializing this split.'"
splits:
- cmd: "git status"
- cmd: "bundle exec rails server --port 4000"
width: 50
- cmd:
- sudo service memcached start
- sudo service mongodb start
height: 50
그런 다음 다음을 실행할 수 있습니다.tmux new-session -d "teamocil sample" \; attach
답변4
이를 통해 gnome-terminal
다음을 수행할 수 있습니다.
gnome-terminal --window -e 'cmd1' --tab -e 'cmd2' --tab -e 'cmd3'
각 탭은 해당 명령이 완료된 후 닫힙니다.