2012-01-12 19 views
0

我有以下的sh脚本 -获得在SH/KSH文件奇怪的错误

YUI_PATH=www/code/build/b2b_dev/yuicompressor-2.3.5.jar 
DIR=www/code/build/b2b_dev/build/web 

cd $DIR 
echo $DIR 

for i in `find . -name *.js -o -name *.css` 
do 
    echo $i 
    ${WAS_DIR}/java/jre/bin/java -jar $YUI_PATH -o $i $i 
done 

echo "All js and css files recursively within $dir have been compressed!" 

,当我跑这个文件我得到这个错误 - /www/code/build/b2b_dev/yuicompressor-2.3.5.jar is not found.

,但我有这个罐子在正确的位置,的inspite它我得到这个错误。

任何机构可以计算出,因为我没有这样做,为什么我收到这个错误.. :(

回答

1

的问题是,你的脚本变为目录www/code/build/b2b_dev/build/web。然后,它会试图查找的jar相对www/code/build/b2b_dev/yuicompressor-2.3.5.jar 到当前目录并不能找到它

我会建议使用绝对路径,而不是

例:

BASE_DIR=/full/path/to/www/code/build/b2b_dev 
YUI_PATH=${BASE_DIR}/yuicompressor-2.3.5.jar 
DIR=${BASE_DIR}/build/web 

如果必须使用相对路径,更改为:

DIR=www/code/build/b2b_dev/build/web 
YUI_PATH=../../yuicompressor-2.3.5.jar 
+0

@罗布麻,我想,我已经做了thing..i正在使用绝对路径 – Vivek 2012-01-12 16:24:29

+0

相同DIR和YUI_PATH都处于绝对路径我case .. – Vivek 2012-01-12 16:28:57

+0

它们看起来不像绝对路径,因为它们没有前导'/'。 – dogbane 2012-01-12 16:29:59