tmuxにおけるコマンドによる外部からセッション制御等のメモ
# パネルの指定方法: TestSession:0.0 [SessionName]:[WindowIndex].[PaneIndex] # SessionName で新たにtmuxセッションをバックグランド(-d)で開始 tmux new -d -s [SessionName] # SessionName を持つtmuxセッションに対して新規ウインドウをバックグランド(-d)で追加 tmux new-window -d -t [SessionName] # SessionName を持つtmuxセッションのウインドウ WindowIndex を縦分割(-h) tmux split-window -h -t [SessionName]:[WindowIndex] # SessionName を持つtmuxセッションのウインドウ WindowIndex のペイン0にKey入力 # Ctrl-C tmux send-keys -t [SessionName]:[WindowIndex].0 C-c # Enter tmux send-keys -t [SessionName]:[WindowIndex].0 Enter # "echo 'abcd'"を実行 tmux send-keys -t [SessionName]:[WindowIndex].0 "echo 'abcd'" Enter
特定のセッション(TestSession)のウィンドウ一覧を指定のフォーマットで取得する場合
# #Sはセッション名、#Iはウィンドウインデックス、#Pはペインインデックス for windex in $(tmux list-windows -F '#S:#I' -t TestSession) do echo $windex done