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

标签 ruby-on-rails linux bash ubuntu terminal

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

  1. 我打开新的终端窗口并导航到 Rails 文件夹并运行 vim
  2. 我打开另一个终端窗口,导航到 Rails 文件夹并运行 'bundle exec guard'
  3. 我打开另一个窗口,然后运行 ​​rails console
  4. 我打开另一个运行着 rails server 的窗口
  5. 我用 IRSSI 打开另一个窗口(上面有 IRC 客户端)

如何使用单个终端命令执行这些操作?我想需要一个自定义脚本,但我不知道如何编写它或将它放在哪里......另外,如果可能的话,我想在全屏终端窗口中打开它们

最佳答案

您可以为这类员工使用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 实际上是标签。

关于ruby-on-rails - 单个自定义终端命令打开多个窗口,里面有不同的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10904533/

相关文章:

ruby-on-rails - 在保存到数据库之前初始化模型对象并检查有效性

python - 如何防止 Python 脚本强制退出?

linux - malloc 和免费的 x86 NASM + 编译

node.js - 使用 NodeJs serialPort - 错误 : %1 is not a valid Win32 application

ruby-on-rails - active_scaffold 路由错误

python - MVC 框架从一种语言到另一种语言(例如 ASP.NET、Python、RoR 等)差异很大吗?

ruby-on-rails - Ruby On Rails/Merb 作为数十亿记录应用程序的前端

Python 弹出 : pass environment variable to command running as another user with sudo

bash - 在 VIM 中对单词(而不是行)进行排序

regex - Linux bash shell 中带有多个点的正则表达式会给出奇怪的结果