tmux
、、、で何が起こっているのかを誰かが説明するのbash
を手伝ってもらえますexec
か?4ペインウィンドウでtmuxセッションを設定しようとしています。理想的には、3つのペインでコマンドを実行したいと思います。たとえば、RubyThinサーバーといくつかのRubyデーモンです。これは私がこれまでに持っているものです:
~/.bin/tmux-foo
:
#!/bin/sh
tmux new-session -d -s foo 'exec pfoo "bundle exec thin start"'
tmux rename-window 'Foo'
tmux select-window -t foo:0
tmux split-window -h 'exec pfoo "bundle exec compass watch"'
tmux split-window -v -t 0 'exec pfoo "rake ts:start"'
tmux split-window -v -t 1 'exec pfoo'
tmux -2 attach-session -t foo
~/.bin/pfoo
:
#!/bin/bash
cd ~/projects/foo
rvm use ree
# here I want to execute command1 2 3 or 4...
exec $SHELL
それはすべて機能します...しかしctlr-c
、シンサーバーを実行している最初のペインで、シンサーバーを停止してシェルに戻ります。ただし、コマンドは履歴にありません。つまり、上キーを押してもbundle exec thin start
コマンドを取得できません...bashの履歴から他のコマンドを取得します。bash履歴でコマンドを取得できるように、これらのスクリプトを配置する方法があるかどうか疑問に思っています。
また...私は、、、の多くの組み合わせを試しましたが、exec
何が起こっているのかよくわかりません...exec $SHELL -s ...
exec $SHELL -s ... -I
誰かがここで何が起こっtmux
ているのかについての一般的な考えを説明するのを手伝ってもらえますか?bash
exec