gpt4 book ai didi

linux - 检查文件在 FTP 服务器上是否可用

转载 作者:太空宇宙 更新时间:2023-11-04 09:19:37 25 4
gpt4 key购买 nike

我需要检查某个文件是否可以在 FTP 服务器上下载。我一直在使用 wget 的 --spider 选项通过 HTTP 实现此目的,但这只适用于 404 错误,而 FTP 不使用它。

当前代码(不工作):

file1="12345.tar"
abc1="http://some.website/data/${file1}"

if wget --no-cache --spider --user=username --password='password' ${abc1} >/dev/null 2>&1; then
echo "File ${abc1} exists. Let's get it!"
bash run.sh
else
echo "File ${abc1} doesn't exist. Exiting script..."
exit 0
fi

我如何检查(“蜘蛛”)以查看文件在 FTP 服务器上是否可用?我知道 FTP 的“404”版本是 550(没有那个文件或目录)。

最佳答案

对于 FTP:

响应码:为新用户准备好服务(220)

响应码:150 目录列表/打开二进制数据连接出现

对于 HTTP:

将 220 或 150 替换为 HTTP/1.1 200 OK

#!/bin/bash

url="ftp://path/to/some/file.something"

function validate_url(){

if [[ `wget -S --spider $url 2>&1 | grep '150'` ]]; then exit_status=$?; fi
if [[ $exit_status == 0 ]]; then
echo "FTP location exists"
elif [[ $exist_status == 1 ]]; then
echo "FTP location not available"
fi
}

validate_url

关于linux - 检查文件在 FTP 服务器上是否可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43389052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com