将变量分配给通过curl下载的文件,并保留原始文件名

将变量分配给通过curl下载的文件,并保留原始文件名

我浏览了几个例子,但找不到我需要的。我正在尝试将我正在下载的文件的名称动态分配给变量,以便以后可以引用它。我必须保留原始文件名,因为它是硬编码在 sha256 校验和文件中的,我随后将使用该文件来验证文件完整性。

URL="https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country-CSV&license_key=xxxxxxxxxxxx&suffix=zip"

curl -s -J "$URL"

显然我不能直接去:filename=$(curl -s -J "$URL")因为那样只会分配文件内容。

有什么指点吗?

答案1

我使用变量找出了解决方案curl --write-out

# filename=$(curl -s -O -J -w '%{filename_effective}' "https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country-CSV&license_key=xxxxxxxxxx&suffix=zip" | awk {'print $1'})

# echo $filename
GeoLite2-Country-CSV_20220329.zip

相关内容