启动终端模拟器最方便的方法是什么?

启动终端模拟器最方便的方法是什么?

假设我需要编写一个脚本来启动终端并执行命令,并且我需要它在各种系统上工作。我怎样才能以安全且便携的方式做到这一点?

xterm一直安装的吗?我假设任何带有 GUI 的 *nix 都必须有一些终端模拟器。我怎样才能到达它? Debian 系统 x-terminal-emulator但显然,甚至不起作用在 Red Hat 中,更不用说非 Linux *nix 了。

答案1

我认为你不能。xterm不需要到处安装,而且实际上可能不是默认安装的。特别是当使用提供自己的终端的桌面环境时。

我认为你最好的选择可能是检查是否存在一些不同的终端(例如,xdg-terminal,x-terminal-emulator, gnome-terminal, konsole, xterm)。也许还需要努力将 xdg-terminal 添加到 FreeDesktop.org 标准中。

然后你会发现不同的终端有不同的方式来运行命令,有时甚至同一终端的不同版本......例如,参见Debian 错误 #648271

您可能还应该为管理员/用户提供一种设置自定义命令的方法。肯定会需要的。

答案2

是的,你需要使用包装器。 i3 WM 中包含一个很好的功能。这里解释一下:http://build.i3wm.org/docs/i3-sensible-terminal.html

只需将其复制到脚本中的 shell 函数中即可: http://code.stapelberg.de/git/i3/tree/i3-sensible-terminal

相关内容