jir*_*lav 24 bash terminal perl shell-script gnome-terminator
我想打开一个终端,将其拆分为 9 个部分(3x3)并执行一些 bash 脚本。但是对于每个终端部分不同的脚本。
这可以使用 perl、python 甚至 bash 来完成吗?
如何在不使用键盘快捷键的情况下在这些小终端之间切换?
哦,顺便说一下,我正在使用terminator
. 如果有其他一些终端仿真器可以启用这样的功能,那是哪个?
ter*_*don 42
为了抄袭我自己,您可以使用您想要的设置设置一个配置文件(从这里改编的说明):
运行terminator
并设置您想要的布局。您可以使用Ctrl+ Shift+E垂直分割窗口和Ctrl+ Shift+ O(这是在苦苦O,不是零),以水平分割。在这个例子中,我创建了一个包含 6 个窗格的布局:
右键单击terminator
窗口并选择Preferences。一旦首选项窗口打开时,去布局,然后单击添加:
这将使用您的新布局填充布局列表:
找到您在布局中创建的每个终端并单击它们。然后在右侧,输入要在启动时在其中运行的命令:
重要提示:请注意,该命令后跟; bash
. 如果您不这样做,终端将无法访问,因为它们将运行您提供的命令并退出。您需要在每个命令之后启动一个 shell 才能使用终端。
设置完所有命令后,单击关闭,然后退出terminator
。
打开terminator
配置文件~/.config/terminator/config
并删除默认配置的布局下的部分。然后将您创建的布局的名称更改为默认值。它应该是这样的:
[global_config]
[keybindings]
[profiles]
[[default]]
[layouts]
[[default]]
[[[child0]]]
position = 446:100
type = Window
order = 0
parent = ""
size = 885, 550
[[[child1]]]
position = 444
type = HPaned
order = 0
parent = child0
[[[child2]]]
position = 275
type = VPaned
order = 0
parent = child1
[[[child5]]]
position = 219
type = HPaned
order = 1
parent = child1
[[[child6]]]
position = 275
type = VPaned
order = 0
parent = child5
[[[child9]]]
position = 275
type = VPaned
order = 1
parent = child5
[[[terminal11]]]
profile = default
command = 'df -h; bash'
type = Terminal
order = 1
parent = child9
[[[terminal10]]]
profile = default
command = 'export foo="bar" && cd /var/www/; bash'
type = Terminal
order = 0
parent = child9
[[[terminal3]]]
profile = default
command = 'ssh -Yp 24222 cchapple@139.124.66.43'
type = Terminal
order = 0
parent = child2
[[[terminal4]]]
profile = default
command = 'top; bash'
type = Terminal
order = 1
parent = child2
[[[terminal7]]]
profile = default
command = 'cd /etc; bash'
type = Terminal
order = 0
parent = child6
[[[terminal8]]]
profile = default
command = 'cd ~/dev; bash'
type = Terminal
order = 1
parent = child6
[plugins]
Run Code Online (Sandbox Code Playgroud)
最终结果是,当您运行terminator
它时,它将打开 6 个窗格,每个窗格都已运行或正在运行您指定的命令:
此外,您可以根据需要设置任意数量的不同配置文件,或者启动终结-p
器并通过提供配置文件名称的开关启动,或者在启动后手动切换到您想要的任何配置文件。