如何从 Mac 命令行将脚本传递给 Windows 8 Vagrant 框?
How to pass a script to a Windows 8 Vagrant box from the Mac command line?
我是 运行 Windows 8.1 来宾,在 Mac OSX 10.11 主机上,来自 Vagrant。我想通过命令行将脚本传递给这个来宾。如果来宾是基于 Unix 的,我可以只做 vagrant ssh -c "$THE_SCRIPT" my-unix-box
并收工。当我尝试 Windows 来宾时,我被告知命令 bash
不存在。
但是,我可以 vagrant ssh
进入 Windows 来宾,而无需指定命令就好了。结果 shell 是 cmd
, 不是 PowerShell 或 Bash 或类似的。
如何通过在命令行中传入来在客户机 Windows Vagrant box(来自 OS X 主机)上执行脚本? Vagrantfile 配置,要安装的来宾软件,或类似的。我对哪个 shell 最终运行我的脚本并不挑剔。
事实证明,您可以使用双破折号分隔将脚本传递给 vagrant
,如下所示:
WINDOWS_THINGS="..."
vagrant ssh windowsBox -- "$WINDOWS_THINGS"
在我的例子中,这会将 运行 WINDOWS_THINGS
的内容作为 cmd
脚本。我想使用的解释器取决于底层盒子,但无论如何这解决了我的问题。 IRC 上有人向我推荐了这个,不幸的是我不记得他们的名字了。但是,如果您正在阅读本文,谢谢!
我是 运行 Windows 8.1 来宾,在 Mac OSX 10.11 主机上,来自 Vagrant。我想通过命令行将脚本传递给这个来宾。如果来宾是基于 Unix 的,我可以只做 vagrant ssh -c "$THE_SCRIPT" my-unix-box
并收工。当我尝试 Windows 来宾时,我被告知命令 bash
不存在。
但是,我可以 vagrant ssh
进入 Windows 来宾,而无需指定命令就好了。结果 shell 是 cmd
, 不是 PowerShell 或 Bash 或类似的。
如何通过在命令行中传入来在客户机 Windows Vagrant box(来自 OS X 主机)上执行脚本? Vagrantfile 配置,要安装的来宾软件,或类似的。我对哪个 shell 最终运行我的脚本并不挑剔。
事实证明,您可以使用双破折号分隔将脚本传递给 vagrant
,如下所示:
WINDOWS_THINGS="..."
vagrant ssh windowsBox -- "$WINDOWS_THINGS"
在我的例子中,这会将 运行 WINDOWS_THINGS
的内容作为 cmd
脚本。我想使用的解释器取决于底层盒子,但无论如何这解决了我的问题。 IRC 上有人向我推荐了这个,不幸的是我不记得他们的名字了。但是,如果您正在阅读本文,谢谢!