将参数传递给新生成的终端

时间:2017-02-08 20:09:38

标签: bash terminal xterm

我正在尝试自动完成某项工作。其中一个是运行一些别名,其中一个产生一个新的终端,一个来自bash终端的XTerm。 在产生这个终端之后,我需要在这个新终端中提供更多命令。

如何实现这一目标。我能想到的一种方法是使用expect脚本来处理这些任务。这会有用吗? 如果没有,是否有任何方法可以在新终端上运行命令。

编辑:

在脚本中我找到了这个....

 execcmd="xterm -sb -sl 5000 -T "'`/usr/bin/hostname -s`.$LOADL_STEP_CLASS'" -e $path run_interactive $@

我认为这是产生新xterm的那个..我需要在这个脚本上运行一些命令然后,在屏幕上获取它吐出的任何内容,寻找特定的字符串,例如" priority - 电平:"休息将是简单的正则表达式为我做的工作,但我想自动化与这个产生的新xterm的交互。

PS:我没有直接的方法在产生时将参数传递给这个终端,而不会弄乱许多其他人正在使用的脚本。所以我无法修改原始别名,也许以某种方式写一个包装器。

1 个答案:

答案 0 :(得分:0)

这不是xterm的-e *args*标志是什么意思吗?它将运行你在那里提供的任何东西,所以如果你修改那个参数,以便它调用的脚本或命令也做你需要的额外步骤,你就完成了。

另一种方法是使xterm shell成为登录shell,以便调用shell启动脚本,但这会产生为每个登录shell调用它们的副作用,这可能适合您的环境。