我正在尝试自动完成一项任务,我必须每次从更新的位置下载新文件,该位置存在于目录" mydirectory"在网络服务器上,目录结构就像这样
的http:// mydirectory中/的 ABC1 / ABC1.tar.gz
有时会创建一个新文件,并且会出现在" mydirectory" linux webserver中的文件夹
的http:// mydirectory中/的 ABC2 / ABC2.tar.gz
现在我需要在此文件的每个新版本上下载此ABC * .tar.gz文件
注意:文件的父目录是相同的文件名"。" (点)点。
我尝试使用此代码:
echo "Please enter file version: "
read FILE_VER
echo "You entered: $FILE_VER"
echo download $FILE_VER patch to install then type yes/no :
read CON_VAR
if["CON_VAR"="yes"];then
echo Your patch is being downloaded...
curl -o output_curl http://<hostname>/5.0.4/USG_5.0_$input_variable__Actiance64bit/USG_5.0_$input_variable_Actiance64bit.tar.gz .
exit
else
echo "You made a right choice or you are drunk :) "
fi
有人能建议我在这里缺少什么吗?
答案 0 :(得分:0)
$input_variable
。$input_variable
,请确保将其用作${input_variable}
,因为在您的代码后面跟着下划线,如果未在代码中使用,则将其视为变量名称的一部分形式为${input_variable}
。答案 1 :(得分:0)
Shell语法非常敏感。此
if["CON_VAR"="yes"];then
需要看起来像这样
if [ "$CON_VAR" = "yes" ];then
括号不仅仅是语法:[
实际上是一个命令(它是test
命令),需要与if
命令分开,它是后续的空格参数。此外,test
命令会根据获取的参数数量执行不同的操作。