无法想象我们这个或创建一个可以重现这个的样本。
尝试使用外部sh文件来调用hadoop sh文件
myfile.sh
# workingdir = /data1/some/path/lib
WORKINGDIR=`cygpath -p -w -m "$WORKINGDIR"`
# so the above in windows land is C:/some/path/lib
# HADOOPCMD essentially is a call to hadoop.sh
$HADOOPCMD jar $WORKINGDIR/myjar.jar
hadoop.sh
echo "$@" // still C:/some/path/lib
exec "$JAVA" $JAVA_HEAP_MAX $HADOOP_OPTS $CLASS "$@"
然而当" $ @"在cygwin中扩展,结果路径变为C:\ some \ path \ lib,然后hadoop.sh抱怨它找不到jar ...不是有效的JAR:C:\ some \ path \ lib
但是,如果我要在myfile.sh中对路径进行硬编码;它的工作原理
$HADOOPCMD jar C:/some/path/lib/myjar.jar
问题
答案 0 :(得分:0)
引用变量有效"$WORKINGDIR"/myjar.jar