答案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