【发布时间】:2017-02-17 04:22:43
【问题描述】:
在 vagrant 配置阶段运行的文件的路径是什么?
在 Vagrantfile 中,为了将文件放置在正确的目录中,我有一个运行 shell 脚本的config.vm.provision(例如:`path:".provision/setup.sh')。
setup.sh 文件从同一文件夹中的另一个文件读取,以运行将文件放置在客户端计算机上的 git 存储库列表。
该脚本在 Vagrant 之外可以正常测试,但我很难找到我应该说它的位置。以下是导致问题的代码示例:
filename='./provision/gitrepos'
exec 4<$filename
echo Start
while read -u4 p ; do
if [ ! -z "$p" ];
then
is_website $p
else
echo
echo "This line '#$p' is blank"
echo
fi
done
问题出现在这里:filename='./provision/gitrepos'
在执行vagrant up 时,该文件不再被视为在主机上,而是在其他地方。但是我首先如何找到与 setup.sh 文件位于同一目录中的文件的位置?
我尝试了 `filename='./gitrepos' 但似乎相对路径不起作用。
如何找到这些文件夹和文件的位置,以便在配置阶段访问它们?
【问题讨论】:
-
要清楚,
setup.sh和gitrepos文件都在同一个目录中,但如果 Vagrant 是运行脚本的文件,我不知道如何访问该文件。
标签: bash path vagrant vagrantfile