我有一个需要像这样调用的命令:
command "complex argument"
如果我想运行 gnome-terminal 并传递这个参数,它是这样的:
gnome-terminal -e 'command "complex argument"'
我想在终端中打开多个选项卡,每次使用不同的参数执行此命令。这是这样工作的:
gnome-terminal -e 'command "complex argument1"' --tab -e 'command "complex argument2"'
但是如果我想用一个脚本来执行它,问题就来了,我从一个循环中获取每个选项卡的参数(即选项卡的数量是可变的)。我的基本想法是我将参数收集到单个变量,然后将其传递给 gnome-terminal。但我不知道如何做到这一点,使所有嵌套的引用参数保持不变。要么所有内容都压缩在一个参数中(如果我调用gnome-terminal "$args"
),要么它被每个空格分开(如果我调用gnome-terminal $args
)。
有什么方法可以在 bash 中编写如此复杂的参数?或者,有没有办法将 IPC 消息发送到 gnome-terminal,告诉它打开一个新选项卡并执行命令?我知道我可以用 Konsole 做到这一点,但现在我想用 gnome-terminal 做到这一点。