Linux jar命令没有';t在bash脚本中运行,但运行';当我手动执行它时

Linux jar命令没有';t在bash脚本中运行,但运行';当我手动执行它时,linux,jar,zip,centos,Linux,Jar,Zip,Centos,正在尝试调试不工作的脚本。因此,脚本位于/etc/init.d/中。权限正确且归root所有。脚本中不起作用的部分: mkdir -p $UNZIPPED_FOLDER cd $UNZIPPED_FOLDER echo "Im here `pwd`" jar xvf $path #unzip $path -d $UNZIPPED_FOLDER 仅供参考: path="/ebs/data.zip" UNZIPPED_FOLDER="/tmp/unzipped_data" 当我运行脚本时,我可

正在尝试调试不工作的脚本。因此,脚本位于
/etc/init.d/
中。权限正确且归
root
所有。脚本中不起作用的部分:

mkdir -p $UNZIPPED_FOLDER
cd $UNZIPPED_FOLDER
echo "Im here `pwd`"
jar xvf $path
#unzip $path -d $UNZIPPED_FOLDER 
仅供参考:

path="/ebs/data.zip"
UNZIPPED_FOLDER="/tmp/unzipped_data"
当我运行脚本时,我可以看到它一直执行到
Im here/tmp/unzip_data
但之后什么也没发生

我认为我的变量是错误的,但是如果我手动运行它
jarxvf$path
(假设我之前在脚本中执行了类似
echo$path
)的操作,那么它就可以工作了

我还检查了
哪个jar
给了我
/usr/bin/jar


此外,所有内容都在
根目录下运行

在$path中有什么?jar文件在那里,对吗?是的,请检查以确保
$path
实际设置在该点。使用
/bin/sh-x/etc/init.d/script
运行脚本将强制shell打印它执行的每个命令,这样您就可以准确地看到它在每一步中实际执行的操作。这可能会有帮助。