2012-06-27 121 views
0

我一直在尝试使用命令export PRIMOSBASE=/directory/for/primosfiles在Cygwin中设置环境变量。在Cygwin中设置环境变量

当我检查变量使用命令echo $PRIMOSBASE它显示/目录/ for/primosfiles。希望这意味着环境变量已设置。

但是当我尝试为/目录中运行一个shell脚本(PRIMOS)/为/ primosfiles,它显示

./primos: line 8: /prilaunch.pl: No such file or directory 
chmod: failed to get attributes of `step1.sh': No such file or directory 

这意味着我没有设置PRIMOSBASE环境。任何人都可以请告诉我,我错了......

谢谢...

+0

你能给我们那个shell脚本的内容到第8行吗?你如何运行该shell脚本? –

回答

1

运行

echo "export PRIMOSBASE=/directory/for/primosfiles" >> ~/.bashrc 

的命令附加到.bashrc文件的末尾,使变量每次使用Cygwin时设置。然后运行

source ~/.bashrc 

使其立即生效。

注意:请确保您使用双括号(>>)来追加。以防万一,备份.bashrc可能是个好主意。如果您对I/O重定向不满意,另一种方法是使用编辑器编辑.bashrc。我认为vim是Cygwin中的默认工具之一。

+0

谢谢...尝试过但不能得到.. – user1427429

+0

@ user1427429:你不能得到它的工作?什么没有准确地工作? – flesk

1

我有一个类似的问题,试图让ANDROID_HOME在Cygwin窗口中工作。当我使用linux路径分隔符时,如下所示 ANDROID_HOME=/cygdrive/c/Users/User/AppData/Local/Android/sdk我的gradlew构建脚本抱怨说找不到ANDROID_HOME中的sdk。

我终于发现,我不得不设置在Windows格式我的环境变量,包括Windows路径分隔符'\',如下 ANDROID_HOME=C:\Users\User\AppData\Local\Android\sdk

注意:路径和在Windows中设置其他一些环境变量转换为Linux的格式。我希望这可以帮助那些希望/需要使用Cygwin + Windows +本质上是需要环境变量的Windows程序的人。