web-dev-qa-db-ja.com

クアッドスプリットビオブターミナルの自動起動

以下を自動的に行うことで、スタートアップの儀式を行うのに時間を無駄にしたくない。

  1. 新しいターミナルを開く
  2. 走る
  3. 水平に分割してから、2つの新しいペインを垂直に分割します(またはその逆)
  4. 各ペインで特定のコマンドを実行する

私はそれがこれらの線に沿ったものになると推測しています:

gnome-terminal --full-screen -- byobu -S MainSession

byobu-tmux select-pane -t 0
byobu-tmux split-window -v
byobu-tmux select-pane -t 1
byobu-tmux split-window -h
byobu-tmux select-pane -t 0
byobu-tmux split-window -h

byobu-tmux select-pane -t 1
byobu-tmux send-keys "COMMAND"
byobu-tmux select-pane -t 2
byobu-tmux send-keys "COMMAND"
byobu-tmux select-pane -t 3
byobu-tmux send-keys "COMMAND"
byobu-tmux select-pane -t 0

最初の行だけで、新しいフルスクリーン端末が開き、新しいbyobuセッションコマンドが渡されます。ただし、スクリプトの残りを一緒に接続する方法がわかりません。 byobuの前に開始引用符を付け、すべてのコマンドを;で区切り、スクリプトの最後に終了引用符を付けると、byobuなしで端末が開かれ、「子プロセスの実行に失敗しました(そのようなファイルまたはディレクトリ)」。

さらに、特定のモニターで端​​末を開くにはどうすればよいですか? gnome-control-centerによると、これを開くモニターは3です。

1
hiigaran

それを理解するのにしばらく時間がかかったので、誰かが複数のビオブセッションを開くために起動スクリプトを必要とする場合は、次のように使用して変更します。

#Create new session. I named this LeftMonitor for obvious reasons
byobu new-session -d -s LeftMonitor

#Select default pane. Probably an unnecessary line of code
byobu select-pane -t 0

#Split pane 0 into two vertically stacked panes
byobu split-window -v

#Select the newly created pane 1. Again, probably unnecessary as the new pane gets selected after a split
byobu select-pane -t 1

#Split pane 1 horizontally to create two side-by-side panes
byobu split-window -h

#Repeat the selection and splitting process with the top half
byobu select-pane -t 0
byobu split-window -h
#At this point, four equally sized panes have been created.

#Select pane to interact with
byobu select-pane -t 1

#Pass a command to the selected pane. I'm using top as the example here.
#Note that you need to type Enter for byobu to simulate pressing the enter key.
byobu send-keys "top" Enter

#Create a new session. Session name is again chosen for obvious reasons
byobu new-session -d -s RightMonitor

#Repeat the same splitting and command issuing processes from the first session.
byobu select-pane -t 0
byobu split-window -h
byobu select-pane -t 1
byobu send-keys "top" Enter
byobu select-pane -t 0
byobu send-keys "top" Enter

#Finally, to be able to actually see anything, you need to launch a terminal for each session
gnome-terminal --full-screen -- byobu attach -t LeftMonitor
gnome-terminal --full-screen -- byobu attach -t RightMonitor

これを好みのテキストエディターで保存し、ファイルに対してSudo chmod + xを実行し、使用するスタートアップリストに追加します。

1
hiigaran