เริ่มต้นเทอร์มินัล byobu แบบแยกส่วนโดยอัตโนมัติ


1

ฉันต้องการหลีกเลี่ยงการเสียเวลาในการทำพิธีเริ่มต้นโดยทำสิ่งต่อไปนี้โดยอัตโนมัติ:

  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 และข้อผิดพลาด: "ล้มเหลวในการดำเนินการกระบวนการลูก ไฟล์หรือไดเรกทอรี) ".

นอกจากนี้ฉันจะเปิดเทอร์มินัลบนจอภาพเฉพาะได้อย่างไร จาก gnome-control-center จอมอนิเตอร์ที่ฉันต้องการให้เปิดเป็นหมายเลข 3

คำตอบ:


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 บนไฟล์และเพิ่มลงในรายการเริ่มต้นที่คุณใช้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.