在另一个(新)终端窗口上运行命令
如何在另一个终端窗口中运行任何命令?
示例:我打开了一个终端窗口,如果我像apropos editor
那样运行命令,那么它就会在该窗口上运行和输出。 但我想在另一个终端窗口(新窗口)上运行相同的命令,而不是从第一个终端的当前窗口。
进一步澄清 :
我需要suggest-command
打开新的终端窗口并在那个(新打开的)窗口中运行提到的 。 (其中
suggest-command
是命令建议的例子。)
怎么做?
这可能是您搜索的内容:
gnome-terminal -e "bash -c \"!!; exec bash\""
或(简称):
gnome-terminal -x sh -c "!!; bash"
它会打开gnome-terminal并执行你的最后一个命令( !!
)并在shell中使用命令输出保持打开状态,即使使用top
或less
的交互式命令……
在你的情况下它:
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
-hold
和konsole
--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的手册页 。
- 打开两个终端;
- 使用
tty
命令识别每个终端; - 假设它们用/ dev / pts / 0和/ dev / pts / 1标识;
- 在终端pts / 0中使用
exec
命令将stdout重定向到pts / 1:exec 1>/dev/pts/1
- 现在pts / 0终端的每个命令stdout输出都以pts / 1显示;
- 使用commad重定向返回stdout:
exec 1>/dev/pts/0
- 现在pts / 0 stdout像以前一样工作。
YouTubevideo: