Windows 只需单击一次,即可在虚拟机中准备Rails环境

Windows 只需单击一次,即可在虚拟机中准备Rails环境,windows,scripting,vagrant,conemu,Windows,Scripting,Vagrant,Conemu,我正在学习在Windows上开发Rails。由于Rails在Windows上的实现还远远不够完美,我使用Vagrant使用虚拟机启动各种Rails工具和服务器 每次启动环境时,我都会执行以下操作: 在我的文件夹中打开4个ConEmu Powershell选项卡 在第一个选项卡中,subl.,然后vagrant up并等待它完成 vagrant-ssh(它使用我的“Git for Windows”安装中的ssh客户端,我猜它是OpenSSH)在前3个选项卡中,然后在每个选项卡中使用cd/vagr

我正在学习在Windows上开发Rails。由于Rails在Windows上的实现还远远不够完美,我使用Vagrant使用虚拟机启动各种Rails工具和服务器

每次启动环境时,我都会执行以下操作:

  • 在我的文件夹中打开4个ConEmu Powershell选项卡
  • 在第一个选项卡中,
    subl.
    ,然后
    vagrant up
    并等待它完成
  • vagrant-ssh
    (它使用我的“Git for Windows”安装中的ssh客户端,我猜它是OpenSSH)在前3个选项卡中,然后在每个选项卡中使用
    cd/vagrant
  • 在第一个选项卡中,
    rakedb:migrate
    然后
    raketest:prepare
  • 在第一个选项卡中,
    rails s
    ;在第二个选项卡中,
    guard-pc
  • 第四个选项卡就剩下了,它用于git命令

您能否设想一个脚本或一系列脚本来启动所有这些命令?我可以想出一种复杂的方法来打开4个选项卡并启动
vagrant ssh
(我还没有检查它是否工作),但我甚至不知道是否可以用这种方式处理ssh会话。

这是您的出发点。创建powershell脚本(例如
RunVG.ps1

并使用以下命令行运行ConEmu(相应地将路径更改为
RunVG.ps1

完成脚本执行后,您将在前三个选项卡中连接ssh,在第四个选项卡中连接powershell。实际上,您将得到2x2个拆分,而不是制表符。如果您不需要拆分-请使用普通“-new_console”

现在,您只需将附加参数传递到ssh实例中,即可在选项卡中运行命令。请咨询ssh手册或有能力的用户

UPD1 粘贴到控制台示例(必须从ConEmu的控制台调用)


我不知道“vagrant ssh”,但我相信它可以接受命令/脚本文件。另外,您还没有在第四个选项卡中描述您的工作。您是对的,我已经添加了它。第一个选项卡是web服务器,第二个是单元测试,在第三个选项卡中我键入我的rails命令,在第四个选项卡中键入我的git命令。顺便说一句,你在Q中没有提到“第三个选项卡”。是的,我有(第三个要点):我在其中启动了“vagrant ssh”,然后是“cd/vagrant”,然后它被用于rails命令。非常感谢!我一定要试试。难道ConEmu不支持像“粘贴”这样的“在控制台中键入”吗?这对于SSH命令之类的东西来说是非常棒的。
Start-Process "vagrant" "up" -Wait -NoNewWindow
Start-Process "vagrant" "ssh", "-new_console:s1THb" -Wait
Start-Process "vagrant" "ssh", "-new_console:s1TVb" -Wait
Start-Process "powershell" "-new_console:s2TVb"
& "vagrant" "ssh"
ConEmu /cmd powershell -NoExit -Command "C:\Vagrant\RunVG.ps1"
conemuc /GUIMACRO Paste(2,"echo abc\necho def\n")