【问题标题】:How do I open a new window (shell) from command line in Linux?如何在 Linux 中从命令行打开一个新窗口(shell)?
【发布时间】:2011-09-30 11:37:55
【问题描述】:

我现在正在使用一个工具,它要求我将腻子连接到远程主机,登录,运行一系列命令来启动引擎,打开一个新窗口(并再次登录)以启动不同的引擎,然后打开第三个窗口(再次登录)以实际使用该工具(让引擎在前两个窗口中运行)。我想编写一个 shell 脚本来自动化这个过程,这样我就可以打开一个窗口,输入“sh whatever.sh”并关闭并运行,而无需实际打开新窗口并再次登录。但是,我找不到让我从一个窗口到下一个窗口的命令。有什么想法吗?

【问题讨论】:

  • 不太明白...怎么样使用ssh在远程机器上执行cmd:ssh root@www 'ps -ef | grep apache | grep -v grep | wc -l'

标签: linux command-line putty


【解决方案1】:

尝试输入“konsole”。这应该会打开一个新的 bash 窗口并将焦点设置在它上面。

【讨论】:

  • 这可行,但不幸的是没有打开终端窗口,而是打开另一个应用程序。
【解决方案2】:

您可以通过在命令行中添加一个 & 符号 (&) 或在运行时按 Ctrl+Z(然后输入 bg 让该进程继续,更多信息关于jobs)。

如果这还不够,您可以使用screen 或tmux 创建虚拟外壳。

如果您重定向了 X(即您可以通过 ssh 访问 GUI),您也可以通过执行您喜欢的 (GUI) 控制台程序来启动一个新窗口,例如 xterm、konsole、gnome-terminal、等等

【讨论】:

  • @Fredrik 已更新并包含在答案中。谢谢!
【解决方案3】:

你熟悉 linux 上的工作吗?

nohup whatever_1.sh &
nohup whatever_2.sh &
nohup whatever_3.sh &

或者屏幕在这里可能有用:

https://serverfault.com/questions/25301/job-control-and-ssh

另请参阅,nohup:

http://en.wikipedia.org/wiki/Nohup

【讨论】:

    【解决方案4】:

    目标机器上的 Shell 脚本无法识别客户端机器上的腻子窗口。 考虑使用 Screen : http://www.gnu.org/s/screen/ - 这是一种干净而强大的方式。

    【讨论】:

      【解决方案5】:

      我认为你需要命令行窗口然后写:

      $ xterm
      # new window started
      

      如果在新窗口中需要python:

      $xterm python
      #now a window will shown with python shell
      

      【讨论】:

        【解决方案6】:

        bash 命令打开 Bourne-again shell (bash) 会话。

        【讨论】:

          【解决方案7】:

          在我的 Ubuntu 18 上,我只需输入命令:

          gnome-terminal
          

          然后打开一个新的 shell...我不喜欢上面的答案,因为 xterm 和 konsole 很可能尚未安装。

          【讨论】:

            【解决方案8】:

            Xfce 终端的另一个不错的选择:

            xfce4-terminal
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2014-06-03
              • 1970-01-01
              • 2015-10-22
              相关资源
              最近更新 更多