linux 下怎么判断 ftp文件是否上传完成

2025-06-27 02:59:55
推荐回答(2个)
回答1:

脚本ftp.sh如下:

#!/bin/bash
#Usage: sh ftp.sh
#ftp files
echo "
open $1
passive
prompt off
user $2 $3
binary
lcd $4
cd $6
mput $5
close
bye
" |ftp -v -n |tee autoftp.log >/dev/null
SUCC="226 File receive OK."
RESULT=`grep -I "${SUCC}" autoftp.log`

rm -rf autoftp.log

if [ "${RESULT}" = "${SUCC}" ]
then
#echo "succeed"
exit 0
else
exit 1
fi

注释:首先登陆ftp,并使用binary方式上传上传文件;将ftp输出的信息重定向到 autoftp.log,然后判断autoftp.log中是否包含上传成功的信息;
如果成功,脚本返回0,如不成功,返回1;
在C程序中调用的方法:if (system(:sh ftp.sh %s %s %s %s %s %s:) == 0) printf("上传成功");

回答2:

linux 下怎
判断 ftp文件
是否上传完成