コマンドの実行後にtmuxウィンドウを開いたままにする方法

コマンドの実行後にtmuxウィンドウを開いたままにする方法

私はやや控えめな端末要件に合わせて設定した動作tmuxに近づけようとしています(私はプログラマーではありません)。screen

いくつかのBashセッション、Alpineインスタンス、Newsbeuterインスタンスを起動したいと思います。私はほとんどの作業を完了しました。主な問題は、起動時にBashセッションの1つでPythonプログラムを呼び出すことです。

問題は、Pythonプログラムの起動後にBashセッションが閉じられ、そのセッションのPythonプログラムからSTDOUT出力を取得するためにBashセッションが開いていることです。

これを行うには、screen次の行を入力します。

$ screen -t bash1 python2.6 python-prog/prog.py &

メモ:起動時に開きたい他の3つの端末についても同様の行).screenrc

しかし、私が考えるのと同等だと思うものを.tmux.conf(ie)に入れると、neww -n Bash1 bash python2.6 python-prog/prog.py &Pythonプログラムを実行するBashセッションが閉じます。一方、残りの3つの端末は正常に起動し、次の条件でtmux開いたままになります。

それでは、私がここで何を間違っているのでしょうか?このPythonプログラムを実行し、bashセッションを開いてSTDOUT出力を表示するにはどうすればよいですか?

答え1

コマンドを2行に分けてみてください。.tmux.conf

  1. ウィンドウを開く

    neww -n Bash1 bash
    
  2. ウィンドウにコマンドを送信

    send-keys -t "Bash1" 'python2.6 python-prog/prog.py' Enter
    

関連情報