环境变量在shell脚本中是空的,但在shell中不是

时间:2015-05-13 11:44:41

标签: android bash shell sh libvlc

shell脚本检查我的一些环境变量,但是这段代码:

You must define ANDROID_NDK, ANDROID_SDK before starting. .....

打印出echo $ANDROID_SDK,而不是在shell中我写了命令echo $ANDROID_NDK或{{1}},它给了我正确的结果。

2 个答案:

答案 0 :(得分:1)

我回答我自己的问题。 我正在尝试的是使用osx而不是Linux来编译libvlc。 问题是我不知道为什么但是unzip无法提取gradle.2.2.1.zip文件所以我认为我可以使用sudo来完成它,但我错了,因为执行{ {1}}在上面显示的代码中停止了,因为普通用户和sudo的环境变量不同。 最后,我解决了手动提取gradle zip文件并自行执行此命令而不是让shell脚本执行它们的问题:

compile.sh

基本上这个脚本应该在Linux上运行良好,但很明显unzip在OSX上有一些问题。

答案 1 :(得分:0)

我认为,问题是由于配置错误导致wget失败但创建了空的zip文件。然后,当使用wget working重新启动脚本时,它会在没有警告的情况下创建.1。

验证wget是否正常工作,删除文件夹中的每个gradle- *文件并重新启动compile.sh。