这适用于 xterm (请参阅https://unix.stackexchange.com/a/739977/119816)
xterm -e "echo hello; bash"
但不与gnome-terminal
. 执行此操作的等效方法是什么gnome-terminal
?
gnome-terminal -- "echo hello; bash"
我尝试过各种引用方式,但没有成功。一些尝试是:
gnome-terminal -- "bash -c \"echo hello; bash\""
#
gnome-terminal -- /usr/bin/bash /tmp/echo-hi
/tmp/echo-hi
回显 hi 的 shell 脚本在哪里?
以及其他几种变体。
bash -c
不应出现在报价单中。请尝试以下操作:
我正在使用这个例如:
这只是在标题为“neovim”的新 gnome 终端窗口中执行
nvim
二进制文件。sh
就我而言,sh
这只是二进制文件的链接bash
。所以你基本上可以在这里使用任何你想要的 shell 二进制文件。这有效:
关键点是:
GNOME 使用
--
双破折号将 GNOME 终端参数与要运行的命令分隔开。要运行多个命令,您需要运行
bash -c
. 通过传入会echo hello; exec bash
导致输出hello,然后将原始 bash 替换为新的 bash,该新的 bash 将成为您的交互式终端。