Vagrantfile 未加载到具有特殊字符的路径中

Vagrantfile not loaded up in path with special characters

我正在尝试在以下目录中执行 vagrant up

~/Desktop/Apps & Co./company/My App/Backend/

我知道,我应该修正我的命名约定。不过现在没办法。

可以看到,路径中有几个特殊字符,如</code> <em>(space)</em>, <code>&, 和 ..

Homestead.yaml 文件包含以下内容:

folders:
  -
    map: ~/Desktop/Apps & Co./company/My App/Backend/
    to: /home/vagrant/app

当从该目录中 运行ning vagrant up 时,我看到以下(缩写)错误:

There was an error loading a Vagrantfile.
Message: LoadError: cannot load such file -- /Users/linusgeffarth/Desktop/Apps & Co./company/My App/Backend/vendor/laravel/homestead/scripts/homestead.rb

是的,Vagrantfile 存在于此目录中。我将路径复制到终端中进行验证。

我在 Homestead.yaml 中尝试了以下路径:

map: ~/Desktop/Apps & Co./company/My App/Backend/
map: ~/Desktop/Apps&Co./company/MyApp/Backend/
map: ~/Desktop/AppsCo/company/MyApp/Backend/
map: ~/Desktop/Apps\ \&\ Co./company/My\ App/Backend/
map: '~/Desktop/Apps & Co./company/My App/Backend/'
map: "~/Desktop/Apps & Co./company/My App/Backend/"

知道如何使用特殊字符路径并正确地从 vagrant up 到 运行 吗?

我终于能够解决这个问题。

  1. 将目录移动到一些没有特殊字符的路径,例如本例中的 ~/Desktop
  2. 更新 Homestead.yaml 文件并插入新路径:map: ~/Desktop/Backend/app
  3. 现在,cd 进入新目录和 运行 $ vagrant up
  4. $ vagrant ssh 现在应该也可以了
  5. $ cd app - 尝试调用 API 方法
  6. $ exit
  7. $ vagrant halt
  8. 将目录移至所需路径
  9. cd进入新目录,编辑Homestead.yaml文件:map: ~/Desktop/Apps & Co./company/My App/Backend/(无转义,无)
  10. $ vagrant up
  11. $ vagrant ssh
  12. $ cd app

现在它应该可以在所需的目录中运行了。