Автоматически запуская разделенный на четверку byobu терминал

Я не хочу напрасно тратить время, делая мой ритуал запуска путем делания следующее автоматически:

  1. Откройте новый терминал
  2. Выполненный byobu
  3. Разделение горизонтально, затем разделяет две новых области вертикально (или наоборот)
  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 и ошибки: "Не удалось выполнить дочерний процесс (Никакой такой файл или каталог)".

Кроме того, как я мог открыть терминал на определенном мониторе? Согласно центру управления гнома, монитор я хочу, это для открытия на является номером 3.

1
задан 2 August 2018 в 16:20

1 ответ

Мне потребовалось некоторое время, чтобы понять это, поэтому, если кому-то понадобится сценарий запуска, чтобы открыть несколько сеансов byobu, используйте и изменяйте по своему усмотрению:

#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 для файла и добавьте его в любой список запуска, который вы используете.

5
ответ дан 7 December 2019 в 15:15

Другие вопросы по тегам:

Похожие вопросы: