迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 >

在 Bash 中启动一个新的终端会话

作者:迹忆客 最近更新:2023/06/10 浏览次数:

在各种情况下,当使用 Bash 或其他 shell 时,可能需要在新终端实例或同一终端中的另一个选项卡中运行脚本或程序。 从终端内打开新的终端实例或选项卡很简单; 我们将通过足够的例子详细解释它。


使用 gnome-terminal 命令在 Bash 中启动新的终端会话

您必须使用简单的命令 gnome-terminal 从已经运行的实例中启动一个新终端。 这将启动一个新的终端实例,并打开一个新窗口。

如果你想打开一个新的终端并从已经运行的实例中运行一个程序,有几种不同的方法可以完成这个任务。

gnome-terminal -x "complete/path/of/the/program" &

上面的命令将在新终端中运行所需的程序; 提供您要运行的程序的完整路径很重要。

命令末尾的 & 将此任务移动到原始终端实例的后台; 不在命令末尾添加 & 可能会导致错误,因为程序可能会在新终端初始化之前尝试运行。

bash -c 选项可以与 gnome-terminal 命令一起使用,以在新终端中执行多个 Bash 命令。

gnome-terminal 命令的语法如下。

gnome-terminal --command="bash -c '[cmd1]; [cmd2]; $SHELL'"

这里 --command="bash -c" 告诉新终端这些是 Bash 命令或脚本,cmd1 和 cmd2 分别代表第一个和第二个命令的名称。

命令末尾的 $SHELL 使终端即使在完成命令后仍保持打开状态。

上述示例的另一种语法是:

gnome-terminal -x bash -c "<cmd>; exec bash"

此命令末尾的 exec bash 与 $SHELL 具有相同的目的(即,在执行命令后保持终端打开)。


在 Bash 中的同一终端中打开一个新选项卡

有时,您可能不想打开多个终端窗口,因为它们很难跟踪。 在这种情况下,在同一终端中打开一个新选项卡是更好的方法。

打开新终端选项卡的命令是:

gnome-terminal --tab

这可以与上面讨论的示例结合使用,以在新的终端选项卡中执行命令,例如:

gnome-terminal --tab -x bash -c "<cmd>; exec bash"

需要注意的是,以上命令是针对支持 GNOME 环境的系统。

对于 macOS,您可以使用以下命令从已运行的终端在新终端中执行命令:

osascript -e 'tell app "Terminal" to do script "cmd"'

这将打开一个新终端并在新创建的终端中执行cmd命令。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便