vagrant - .bashrc具有正确的导出,但变量不正确

时间:2014-09-03 23:43:26

标签: linux bash vagrant vagrantfile

我没有写过流浪文件 - 它是由我的同事制作的,我对编写它们并不是很熟悉,但根据它们的外观,我可以理解它在某种程度上的作用。我正在运行Windows和一个精确的32个虚拟机,并模拟某种Linux系统。

基本上正在发生的是vagrant文​​件执行bootstrap.sh,其中包含以下行:

cat /vagrant/support/bash-template.dat >> /home/vagrant/.bashrc

support / bash-template.dat包含

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386

当我在ssh'ing into vagrant之后检查.bashrc时,它在底部有这条线。

如果我这样做

> echo $JAVA_HOME

我得到了

/usr/lib/jvm/java-7-openjdk-i386

但如果我这样做

>cd $JAVA_HOME

我得到了

: No file or directorya-7-openjdk-i386

这里发生了什么?它只是将变量的后半部分与错误消息混合在一起。

目录存在!如果我从root开始,我可以做到

~> cd /usr/lib/jvm/java-7-openjdk-i386

它把我带到了java家。 我可以在shell中重新导出变量,它们可以工作,但是能够从.bashrc中执行它会非常有帮助,所以我不必每次登录时都重新导出所有15个变量。 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用dos2unix util来修复行结尾不匹配。