【发布时间】:2015-06-09 03:25:46
【问题描述】:
您好,我有一段代码不断提示“语法错误:文件意外结束”。下面是代码示例。我可以知道它有什么问题吗?因为我需要做一个比较然后上传代码。
下载文件的第一部分代码没有问题。但是第二部分只是拒绝移动
ftp -in << END_DL
open $ftp_site
user $username $password
cd $REMOTE_FOLDER
get $FILE_NAME
close
bye
END_DL
declare -a folders=( $(cat $LOCAL_FOLDER/files.json | jq '.files' | jq 'keys' | jq '.[]') )
diffFiles=()
for folder in "${folders[@]}"
do
declare -a files=( $(cat $LOCAL_FOLDER/files.json | jq '.files.'${folder} | jq 'keys' | jq '.[]') )
for file in "${files[@]}"
do
# echo "$(cat $LOCAL_FOLDER/files.json | jq '.files.'${folder}'['${file}']')"
# Compare with the remote file json
a=$(cat $LOCAL_FOLDER/files.json | jq '.files.'${folder}'['${file}']')
b=$(cat $FILE_NAME | jq '.files.'${folder}'['${file}']')
if [[ "$a" == "$b" && -n $a ]]
then
echo "Equal"
else
echo "$file in ${folder} folder Not Equal. Transferring file now"
folder=${folder:(1)}
folder=${folder%?}
file=${file:(1)}
file=${file%?}
diffFiles+=$folder/$file
ftp << END_UL
close
bye
END_UL
fi
done
done
【问题讨论】: