重定向curl后获取最终URL

在页面重定向(最好使用curl或wget)之后,我需要获取最终的URL。

例如, http://google.com 可以重定向到

http://www.google.com

内容很容易获得(例如curl --max-redirs 10 http://google.com

-L),但是我只对最终URL(在前一种情况下为http://www.google.com)感兴趣。

仅使用Linux内置工具有什么方法可以做到这一点?(仅命令行)

回答:

curl-w选项和sub变量url_effective就是您要寻找的。

就像是

curl -Ls -o /dev/null -w %{url_effective} http://google.com

更多信息

-L         Follow redirects

-s Silent mode. Don't output anything

-o FILE Write output to <file> instead of stdout

-w FORMAT What to output after completion

您可能还想添加-I(这是一个大写字母i),这将使命令不下载任何“

body”,但是它随后还使用HEAD方法,这不是要包含的内容,并且可能会更改服务器的功能。有时,即使服务器对GET的响应很好,服务器对HEAD的响应也不好。

以上是 重定向curl后获取最终URL 的全部内容, 来源链接: utcz.com/qa/420425.html

回到顶部