如何像cat命令处理本地文件一样在终端打印HTTP请求内容?
解决Web请求内容直接输出到Shell的方案
嗨,这个需求其实用几个常用的命令行工具就能轻松搞定,lynx毕竟是网页浏览器,主打交互式浏览,确实不太适合直接把原始响应内容输出到Shell里。给你推荐两个最实用的工具:
1. 使用curl(最常用的选择)
curl默认就会把Web请求的响应内容直接输出到标准输出(也就是你的Shell终端),完全符合你要的「像cat处理本地文件那样」的效果:
curl https://your-target-url.com
如果目标URL有重定向(比如HTTP 3xx状态码),想要自动跟随重定向的话,加上-L参数:
curl -L https://your-target-url.com
额外小技巧:如果需要同时查看响应头和内容,加-i参数;如果遇到自签名证书的网站,想忽略证书验证,加-k参数。
2. 使用wget(另一个经典工具)
wget默认是把内容下载到本地文件,但只要加一个参数就能让它输出到终端:
wget -O- https://your-target-url.com
这里的-O-表示将输出写入到标准输出(-代表stdout),和cat的输出逻辑一致。同样,如果要跟随重定向,加--follow-redirects参数;忽略证书验证用--no-check-certificate。
这两个工具几乎是所有类Unix系统(比如Linux、macOS)默认预装的,不用额外安装,直接就能用~
内容的提问来源于stack exchange,提问作者Daniel Santos
相关产品推荐
相关产品推荐

