Shell 判断FTP上某个路径、文件是否存在

Shell 判断FTP上某个路径、文件是否存在,第1张

如果FTP上的文件很大,获取文件会很费时。应该可以不用获取直接判断的,下面供借鉴:

#!/bin/bash

server=127.0.0.1 #改为你自己的FTP服务器IP

user=root #修改为桥燃你自己的FTP登录用户名

password=root #修改为你自己的FTP用户密码

errlog=./err.log #用于记录FTP错误

ftpCheckFile()

{

ftp -n -i $server <<EOF

USER $user

PASS $password

ls $1

bye

EOF

}

rm -f $errlog

ftpCheckFile $1 >/dev/null 2>$errlog

bytes=`wc -c 腔消搜$errlog | awk '{print $1}'`

if [ $bytes -eq 0 ] then

      echo "$1 - Exist!"

else

      echo "$1 - Not exist!"

fi

用的时候在脚本名后跟一个参数,就是你要判断的文件名或路径名。

思路:如果文件或路径不存在,FTP中的ls命令会执行错误,从而在错误日志err.log中有记录。

通过解析伍历该错误日志的内容,可以得知文件或目录是否存在。

我这里暂时没有环境试验,所以没法得知错误日志的格式,只能暂且通过判断日志字节大小是否为0来看是否发生了错误,而无法确定具体错误种类。

不是空间,自己电脑穗悉上给你辩族携做个实验,希望对你有点携伏启发。

看D盘有没有一个liang的文件夹,如果没就创建,如果有就删除

和你的有点相似。

dir d:\ | find "liang"

if %errorlevel%==0 goto okREM--如果有就跳到:ok

if %errorlevel%==1 goto end REM--如果没就跳到:end

:ok

rd d:\c

:end

md d:\c


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12152134.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存