在 Bash 中启动一个新的终端会话
在各种情况下,当使用 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命令。
相关文章
在 Bash 中检查语法
发布时间:2023/06/11 浏览次数:97 分类:操作系统
-
在 Bash 脚本中情况并非如此,因为 Bash 是一个命令行解释器。 因此,我们需要单独检查语法错误。可以有不同的技术来检查语法问题,如下所示。
使用 Bash 对文本文件中的数字列表求和
发布时间:2023/06/11 浏览次数:109 分类:操作系统
-
本篇文章将介绍使用 Bash 脚本对文件中的数字列表求和的多种方法。 第一种方法涉及使用粘贴命令,我们将讨论两种情况:使用现有文件和使用标准输入读取文件。
在 Bash 中传递所有参数
发布时间:2023/06/11 浏览次数:197 分类:操作系统
-
在 Bash 脚本中,我们主要使用语法 $1 $2 $3 ... $N 在函数中传递变量。此外,我们将看到必要的示例和解释,以使主题更容易理解。在 Bash 中传递所有参数
在 Bash 中解析 XML
发布时间:2023/06/11 浏览次数:109 分类:操作系统
-
本文将展示我们如何通过 Bash 解析 XML。我们将在这里讨论两个库。 我们的第一个库是 xmllint,第二个库称为 XMLStarlet。在 Bash 中使用 xmllint 解析 XML
Bash 脚本中的 Echo Tab 字符
发布时间:2023/06/11 浏览次数:198 分类:操作系统
-
本文演示了如何回显特殊字符(例如制表符),否则这些字符会在 Bash 脚本中转换为单个空格字符。 这扩展到 Bash 以外的 shell(例如 zsh)。
在 Bash 中回显到 stderr
发布时间:2023/06/11 浏览次数:102 分类:操作系统
-
本文将了解 stderr 及其功能。 此外,我们将查看一些示例,这些示例将使该主题更容易理解。在 Bash 中回显到 stderr 命令 stderr 主要用于在执行任何命令期间保持错误的重新编码。
在 Bash 中连接多个文件
发布时间:2023/06/10 浏览次数:170 分类:操作系统
-
有时出于各种目的,我们需要将多个文件连接成一个文件。 在 Bash 脚本中,很容易完成这项任务。在 Bash 中连接多个文件
在 Bash 中打开 Emacs
发布时间:2023/06/10 浏览次数:50 分类:操作系统
-
本文将展示我们如何在 Bash 中打开 Emacs。 我们还将讨论如何安装 Emacs 文本编辑器。在您的系统中安装 EMACS 假设您的系统中没有 Emacs。
在 Bash 中清除终端屏幕
发布时间:2023/06/10 浏览次数:101 分类:操作系统
-
有多种方法可以在 bash 脚本中清除终端。 本文将讨论 3 种清除终端的方法。使用 tput reset 清除终端屏幕 第一种方法使用关键字 tput reset 来清除屏幕。