我需要在页面重定向后获得最终URL,最好使用curl或wget.

例如,100可以重定向到101.

内容很容易获取(例如curl --max-redirs 10 http://google.com -L),但我只对最终的url感兴趣(在前一个例子中是http://www.google.com).

有没有办法只使用Linux内置工具来实现这一点?(仅限命令行)

推荐答案

curl-w option,子变量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

More

您可能还想添加-I(大写i),这将使命令不会下载任何"body",但它随后也会使用HEAD方法,这不是问题所包含的内容,并且可能会改变服务器的功能.有时,服务器对HEAD的响应并不好,即使它们对HEAD的响应很好.

Linux相关问答推荐

如何删除字符串中的`{{i:`and `}}`

C++17:G++8.5版似乎无法正确生成无符号64位伪随机整数

在64位Linux Mint 21.2 Mate上呈现nvim中的文本对象时出现问题

shell中两个日期的天数差异

Azure Linux B1s VM-Jenkins Sever已安装,但主页未打开

如何在 ERE 中结束这个正则表达式

仅在 Linux 上出现 AWS RDS `flush tables` 错误的 mysqldump

如何启用或切换现有的Flutter 项目(仅限移动设备)到 MacOS 或 WEB 或 Linux 或 Windows?

sed 根据文件中的条件进行多次替换

tmux:挂起不加载,不响应任何选项命令

如何在 Linux 命令行上解析 CSV 文件?

为什么我不能将 Unix Nohup 与 Bash For 循环一起使用?

如何获取 CPU 使用率

如何测试是否存在两个文件?

如何在非阻塞套接字上处理 OpenSSL SSL_ERROR_WANT_READ / WANT_WRITE

zsh:找不到命令 laravel

在Linux中使用空格设置环境变量

Linux 守护进程

Linux:删除多个文件的文件扩展名

从文件中随机 Select 行而不用 Unix 啜饮它