打开3个终端,为每个终端运行不同的命令,以建立开发环境


6

我是Ruby on Rails Web开发人员,我经历了很多重复工作来启动我的开发环境。我想知道是否有任何方法可以通过编写脚本或使用程序(如quicksilver)或某些东西来消除我的工作环境。我知道如何使用quicksilver打开终端,我甚至有一个保存的窗口组来打开我的3或4个窗格。

我希望自动发生的下一件事是让所有三个转到某个目录,每个目录运行不同的命令。一个将启动本地服务器,在另一个选项卡中,启动后台进程。另一个会打开文本配合,然后启动一个控制台会话,而最后一个运行一个svn(或git)状态。哦,是的,我很乐意继续打开firefox,还有一些标签可以到达几个地方。

有没有人对如何在一次quicksilver命令中实现所有这些,或双击我的桌面上某种类型的脚本有任何建议?

Answers:


6

首先,您可以设置多个终端窗口,每个窗口都可以使用命令启动。只需前往终端 - >偏好 - >设置,并为您要启动的每个命令创建一个窗口。接下来,终端具有“窗口组”的概念。打开要启动的终端窗口,然后使用Window将其保存为窗口组 - >将Windows保存为组。最后,您可以使用窗口组启动终端。回到终端 - >首选项,然后转到“开始”。在“打开,启动”下,选择“窗口组”,然后选择您创建的窗口组。这将使它在启动时如此,终端将启动该组。如果你只是想开始这个小组,但是在启动时不这样做,那么就自然地跳过最后一部分。


1

要在Mac OSX中打开另一个终端窗口,只需点击即可 cmd + T 从命令行。


2
这个答案只涵盖了用户所要求的一小部分内容。发布答案时,请尝试解决请求者发布的所有问题。应保留小型快速解决方案,以便对原始帖子进行一般性评论。
Will.Beninger

1

我想这可能会对你有所帮助

function tab() {
  while read hostname
  do
  {
    osascript 2>/dev/null <<EOF
    tell application "System Events"
      tell process "Terminal" to keystroke "t" using command down
    end
    tell application "Terminal"
      activate
      #do script with command "cd \"$PWD\"; $*" in window 1
      do script with command "ssh root@$hostname" in window 1
    end tell
EOF
  }
  done < "$1"
}

我在.bash_profile中添加了这个函数,然后获取.bash_profile并使用它调用它 tab hostnames.txt 其中hostnames.txt是包含我想要ssh到的IP地址列表的文本文件,假设已经设置了ssh密钥对。

参考: https://stackoverflow.com/questions/7171725/open-new-terminal-tab-from-command-line-mac-os-x/8188174#8188174


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.