【问题标题】:Bash script to open multiple terminal tabs and run some scripts用于打开多个终端选项卡并运行一些脚本的 Bash 脚本
【发布时间】:2020-06-18 03:28:47
【问题描述】:

由于我的产品遵循微服务架构,我想同时运行多个应用程序。 我想打开新的终端选项卡并在其中运行一些命令。你能帮我写一个 bash 脚本来执行这些操作吗?这是我每天需要做的重复任务/重新启动我的系统。我想让它自动化。

例如:

Tab1: 'cd Documents/my_app1; rails s -p 4000'
Tab2: 'cd Documents/my_app2; rails s -p 5000'
Tab3: 'cd Desktop/angular_app; yarn start --port 3000'

等等。

所以,我需要一个脚本来用一个命令运行它。

【问题讨论】:

  • 好吧,不是不知道您使用的是什么桌面和什么选项卡式控制台应用程序?例如,在 KDE3 中,在 konsole 上调用 DCOP 的简单 bash 脚本可以设置任意数量的选项卡,并在启动时在每个选项卡中运行不同的命令——但我严重怀疑你使用的是 KDE3...(我是)
  • 我对这些事情没有太多想法。我只是在 Ubuntu 中使用预安装的终端。我是新手。
  • 操作 GUI 终端可能不太方便或便携。您可以使用expect(使用tcl)之类的工具。如果您更熟悉 shell 脚本,请查看我的 sexpect (Expect for Shells)
  • 顺便说一句,还不清楚为什么需要在 GUI 终端选项卡中运行命令。你能把在后台运行的命令(比如sleep 10 &)作为shell的工作吗?

标签: bash ubuntu terminal


【解决方案1】:

标签有什么用?

gnome-terminal -- /bin/bash -c 'cd Documents/my_app1; rails s -p 4000'
gnome-terminal -- /bin/bash -c 'cd Documents/my_app2; rails s -p 5000'
gnome-terminal -- /bin/bash -c 'cd Desktop/angular_app; yarn start --port 3000'

【讨论】:

  • 比 DCOP 容易得多。从 Gnome 2 开始我就没有使用过 gnome,但我确实喜欢 gnome-terminal....
  • 它会弹出一个新窗口并更快地自动关闭:(
  • @DavidC.Rankin 你能告诉我什么是 DCOP 吗?我该如何继续?
  • 哦,对不起。 DCOP 是 DBUS 的前身,用于为 KDE 提供比 IPC 更长的消息长度的进程间通信。它早就被替换了,除了那些运行 KDE3 的。 gnome-terminal 应该可以在 gnome-shell 中编写脚本。我已经有十年没用过 gnome 了,所以我不能给你更多的细节。 Some fast way to save and restore tabs of Terminal? 这里有一个老问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-18
  • 1970-01-01
  • 2021-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多