在另一个(新)终端窗口上运行命令

如何在另一个终端窗口中运行任何命令?

示例:我打开了一个终端窗口,如果我像apropos editor那样运行命令,那么它就会在该窗口上运行和输出。 但我想在另一个终端窗口(新窗口)上运行相同的命令,而不是从第一个终端的当前窗口。

进一步澄清
我需要suggest-command 打开新的终端窗口并在那个(新打开的)窗口中运行提到的 。 (其中suggest-command是命令建议的例子。)

怎么做?

这可能是您搜索的内容:

 gnome-terminal -e "bash -c \"!!; exec bash\"" 

或(简称):

 gnome-terminal -x sh -c "!!; bash" 

它会打开gnome-terminal并执行你的最后一个命令( !! )并在shell中使用命令输出保持打开状态,即使使用topless的交互式命令……

在你的情况下它:

 gnome-terminal -e "bash -c \"apropos editor; exec bash\"" 

要么

 gnome-terminal -x sh -c "apropos editor; bash" 

启动您要运行的终端的另一个实例:

 xterm -hold -e 'apropos editor' & 

注意-hold 。 大多数终端在运行您提供的命令后将退出。 网站上已有十几个关于此的问题:

  • 如何创建一个打开终端窗口并在其中执行命令的脚本?
  • 如何在不关闭终端的情况下运行脚本?

另一种方法是使用需要退出的应用程序。 nano将独立保持开放。 如果您只是输出到屏幕,您可以将其输入less

 xterm -e 'apropos editor | less' & 

也就是说,在你的情况下(正如其他两个人所说的那样)你打开另一个终端并运行你的命令似乎更容易。

每个终端甚至是一个程序,你可以像任何其他程序一样启动,带有&放在后台,给出一个参数列表等等。

使用它的终端首先取决于您使用的系统的可用性(如果它们是否已安装),具体取决于它们的特性,然后取决于您的个人品味。

  konsole --hold -e "ls" & xterm -hold -e "ls" & gnome-terminal -e "ls" & ... 

注意xterm -holdkonsole --hold之间的区别。

每个实现都有不同的选项 ,您必须使用帮助进行检查。 甚至可以以不同的方式调用帮助。 您可以发现man konsole不起作用,因此您必须使用--help直接询问可执行文件。

这是您可以在系统上搜索的终​​端列表

 aterm - AfterStep terminal with transparency support gnome-terminal - default terminal for GNOME guake - A dropdown terminal for GNOME konsole - default terminal for KDE Kuake - a dropdown terminal for KDE mrxvt - Multi-tabbed rxvt clone rxvt - for the X Window System (and, in the form of a Cygwin port, for Windows) rxvt-unicode - rxvt clone with unicode support xfce4-terminal - default terminal for Xfce desktop environment with dropdown support Terminator - is a GPL terminal emulator. It is available on Microsoft Windows, Mac OS X, Linux and other Unix X11 systems. Terminology - enhanced terminal supportive of multimedia and text manipulation for X11 and Linux framebuffer tilda - A drop down terminal wterm - It is a fork of rxvt, designed to be lightweight, but still full of features xterm - default terminal for the X Window System Yakuake - (Yet Another Kuake), a dropdown terminal for KDE 

您可以使用gnome-terminal的-e选项,如下所示:

 gnome-terminal -e 'sh -c propose editor' 

这里是gnome-terminal打开的shell。 请注意,一旦命令终止,这将退出终端。 有关更多信息,请参阅gnome-terminal的手册页 。

  1. 打开两个终端;
  2. 使用tty命令识别每个终端;
  3. 假设它们用/ dev / pts / 0和/ dev / pts / 1标识;
  4. 在终端pts / 0中使用exec命令将stdout重定向到pts / 1: exec 1>/dev/pts/1
  5. 现在pts / 0终端的每个命令stdout输出都以pts / 1显示;
  6. 使用commad重定向返回stdout: exec 1>/dev/pts/0
  7. 现在pts / 0 stdout像以前一样工作。

YouTubevideo: