unix – Curl在下面的位置抓取远程文件名
发布时间:2020-12-15 09:24:49 所属栏目:安全 来源:网络整理
导读:当使用curl下载文件时,如何跟踪链接位置并将其用于输出文件名(不提前知道远程文件名)? 例如,如果点击下面的链接,您将下载一个文件名为“pythoncomplete.vim”。但是,使用curl的-O和-L选项,文件名只是原来的remote-name,一个笨拙的“download_script.p
当使用curl下载文件时,如何跟踪链接位置并将其用于输出文件名(不提前知道远程文件名)?
例如,如果点击下面的链接,您将下载一个文件名为“pythoncomplete.vim”。但是,使用curl的-O和-L选项,文件名只是原来的remote-name,一个笨拙的“download_script.php?src_id = 10872”。 curl -O -L http://www.vim.org/scripts/download_script.php?src_id=10872 为了下载具有正确文件名的文件,您必须提前知道文件的名称: curl -o pythoncomplete.vim -L http://www.vim.org/scripts/download_script.php?src_id=10872 这将是非常好的,如果你可以下载文件,而不知道的名称提前,如果不是,有没有另一种方式快速下拉重定向文件通过命令行?
如果您有最新版本的curl(7.21.2或更高版本),请参阅
@jmanning2k’s answer。
我有一个旧版本的curl(像7.19.7与雪豹),做两个请求:一个HEAD从响应头获取文件名,然后一个GET: url="http://www.vim.org/scripts/download_script.php?src_id=10872" filename=$(curl -sI $url | grep -o -E 'filename=.*$' | sed -e 's/filename=//') curl -o $filename -L $url (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |