在Bashes / Shells中,通常很容易在一个文件夹中执行命令,但是它适用于另一个文件夹。例如,使用ls
,您可以执行ls -l /some/folder
或ls /some/folder -l
,并列出/some/folder
目录中的所有文件/目录以及权限,所有者等。
有没有办法用命令行VM管理程序Vagrant做到这一点?当我尝试从C:目录(/c
)与Git Bash(msysgit),vagrant init some/vagrant/folder
时,创建的文件&文件夹仍然放在我所在的文件夹/c
中,而不是我指定的文件夹/c/some/vagrant/folder
,当我执行vagrant some/vagrant/folder init
时,它会抛出错误。
是否有任何方法可以将vagrant
命令应用于您不在的文件夹,或者每次我想初始化VM时是否只需要cd
?
答案 0 :(得分:3)
documentation表示vagrant init
初始化当前目录。所以流浪汉本身不会允许你想要的东西。但是,bash可以提供帮助:
(cd some/vagrant/folder; vagrant init)
这样做是启动一个子shell,您首先立即更改目录,然后发出vagrant init
命令。在子shell中运行它会阻止cd
弄乱交互式会话的当前工作目录。