如何解决我如何从Qt获取Ubuntu终端列表
在我的应用中,我想在终端仿真器中为用户打开ssh。现在我正在像这样使用QProcess:
QProcess _localhostConnection;
_localhostConnection.start(QString("gnome-terminal"),QStringList("--command=ssh 127.0.0.1"));
但是问题是另一台计算机上没有gnome-terminal。另一台计算机具有Ubuntu。如何在Ubuntu上的Qt中获取已安装终端的列表?
解决方法
尝试致电x-terminal-emulator
。几乎所有基于Debian的系统都使用update-alternatives
软件包(与x-terminal-emulator
之类的虚拟软件包结合使用)来预订具有类似功能的程序,例如Internet浏览器,编辑器,命令解释器等。调用x-terminal-emulator
将启动用户设置的默认终端仿真器。
在此处阅读有关update-alternatives
的更多信息:https://manpages.ubuntu.com/manpages/xenial/en/man1/update-alternatives.1.html
但是,如果您打算支持所有终端仿真器,则对--command=ssh 127.0.0.1
进行硬编码不是很明智。例如,XTerm将不接受该参数语法。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。