单个自定义终端命令打开多个窗口,里面有不同的东西

时间:2012-06-05 20:35:49

标签: ruby-on-rails linux bash ubuntu terminal

当我打开笔记本电脑时,我发现自己运行相同的终端命令。我按ctrl + alt + t打开一个新的终端窗口。 (我是在Ubuntu 12.04上使用RoR的初学者)

  1. 我打开新的终端窗口并导航到Rails文件夹并运行 vim
  2. 我打开另一个终端窗口,导航到Rails文件夹并运行 '捆绑执行警卫'
  3. 我打开另一个窗口,然后运行 rails console
  4. 我打开另一个运行 rails服务器的窗口
  5. 我打开另一个窗口,其中包含 IRSSI (IRC客户端)
  6. 如何使用单终端命令执行这些操作?我想自定义脚本是必需的,但我不知道如何写它或放在哪里...另外,如果可能的话,我想在全屏终端窗口中打开它们

2 个答案:

答案 0 :(得分:1)

您可以将tmux用于此类工作人员。例如,下面的示例将创建5个窗口(这些是选项卡),每个窗口都以-n之后的第一个参数命名,然后执行。

#!/bin/sh
tmux new-session -d -s hawkhost

tmux new-window -t hawkhost:1 -n 'vim' 'vim'
tmux new-window -t hawkhost:2 -n 'bundle' 'bundle exec guard'
tmux new-window -t hawkhost:3 -n 'rails1' 'rails console'
tmux new-window -t hawkhost:4 -n 'rails2' 'rails server'
tmux new-window -t hawkhost:5 -n 'irc' 'irsii'

tmux select-window -t hawkhost:1
tmux -2 attach-session -t hawkhost

请在此处查看有关此内容的更多信息:

http://blog.hawkhost.com/2010/07/02/tmux-%E2%80%93-the-terminal-multiplexer-part-2/#tmux-shell-scripting

在tmux中panes是任意窗口,而windows实际上是标签。

答案 1 :(得分:0)

您想要一个屏幕多路复用器,例如GNU Screentmux