我如何打开默认bash 脚本中的终端模拟器?例如,我希望我的 Wine 游戏能够在默认设置的任何终端模拟器中启动,从而为我提供一个调试界面。
我的脚本如下:
cd "/path/to/wine game's dir/
WINEPREFIX="/path/to/wine prefix" wine "/path/to/wine game's dir/exe"
我将所有内容放入 .sh 中并运行以执行它bash /path/to/script
但就像我说的,我希望它启动一个终端窗口,这样我就可以看到输出......
答案1
那里没有默认终端模拟器。如果您尝试调用 XTerm,但它尚未安装,则不会运行默认的终端仿真器。这甚至比“默认 shell”更用词不当(例如登录shell 设置在帐户数据库中,首选shell 在环境变量或sh
) 的供应商中设置。
有个人用户的首选终端仿真器,以及(在某些操作系统上)系统范围内的首选终端仿真器。
全系统
后者通过其替代系统设置在 Debian 和衍生操作系统上,如x-terminal-emulator
.该命令将调用多个(已安装的)GUI 终端仿真程序之一,并且其手册页将成为其中一个的手册页,系统管理员可以使用以下命令在其中进行切换:
更新替代方案 --config x-terminal-emulator
在具有 i3 窗口管理器的操作系统上,有一个类似但不完全相同的i3-sensible-terminal
命令,它尝试查看(特殊的)TERMINAL
环境变量 run的值x-terminal-emulator
或一长串硬连线列表之一。将其与 Debian 的sensible-pager
和命令进行比较(和对比)sensible-editor
。
每个用户
每个用户首选终端仿真器的配置稍微复杂一些。它因桌面而异,并且某些系统范围的首选项机制具有按用户覆盖的功能。
- 对于 i3 窗口管理器,
i3-sensible-terminal
实际上是桌面启动首选终端仿真器的方式,其每用户配置是一个环境变量。 - 对于 GNOME,GNOME 设置数据库中有一些设置,请使用以下命令读取:
gsettings 获取 org.gnome.desktop.default-applications.terminal exec
gsettings 获取 org.gnome.desktop.default-applications.terminal exec-arg TerminalApplication
对于 KDE,它是在配置文件中命名的设置kdeglobals
,读取方式为:kreadconfig --file kdeglobals --group General --key TerminalApplication --default konsole
GUI寻呼机
当然,在紧握的手上你不需要终端模拟器。您也可以使用具有 GUI 和跟随模式的寻呼程序:
WINEPREFIX="/path/to/wine prefix" wine "/path/to/wine 游戏目录/exe" 2>&1 | 一些 gui 文本查看器 --follow -
不幸的是,这在自由软件工具集中是有一点差距的。
简单明了的 GUI 文本文件查看器很少。人们最常见的建议是使用文本文件编辑作为文本文件观众,向 Kate、KWrite 或 GVIM 等工具提供适当的选项或参数,告诉它们将标准输入视为要编辑的文本文件。 同样,也dtpad
有一个选择。-viewOnly
确实存在非文本编辑器的专用文本查看器。一可能(我还没有尝试过这个。)还可以通过将其作为文件名来阻止 Mark Thomas Eriksenseetxt
充当过滤器。 /dev/stdin
(再说一次,您可能不会。众所周知,当文本文件查看器的输入文件不可查找时,他们会感到不高兴,因为管道不可查找。这个工具可能就是这样的一个。)还有一些工具,例如 Roland Baudin 的xfv
和 KDE 的kless
.
但显然这些工具都不具备与 TUI 工具相当的能力,例如less
,随着更多输入的到来而继续阅读,同时允许用户查看现有文本。
进一步阅读
答案2
XFCE通过exo 实用程序:
exo-open --launch TerminalEmulator "bash -c '/path/to/script'"
...或者使用 sha-bang (如#!/bin/bash
)e 配置脚本头使其可执行
chmod +x '/path/to/script'
而且你不需要bash -c
:
exo-open --launch TerminalEmulator '/path/to/script'
- 但与x 终端模拟器您可以使用默认的终端选项
(类型man x-terminal-emulator
):
x-terminal-emulator -e "bash -c '/path/to/script'"
…或者如果它可以用杀帮:
x-terminal-emulator -e '/path/to/script'
Xterm 本身(存在于大多数 Linux 发行版中)。您甚至可以使用它的选项使其看起来不同:
xterm -bg white -fg black -fa Monospace -fs 11 -iconic -geometry 60x10 -e bash -c '/path/to/script'
或者
xterm -bg white -fg black -fa Monospace -fs 11 -iconic -geometry 60x10 -e /path/to/script
-bg=背景颜色
-fg = 前景色(字体)
-fa = 字体名称
-fs = 字体大小
-iconic = 最小化
-几何形状=窗口大小
-e program [arguments ...] 指定要在 xterm 窗口中运行的程序及其命令行参数