mac终端用curl下载网页文件需区分html源码与真实资源:不加参数默认输出到终端,-o或>保存为html;下载pdf等文件须确保url直链或加-l跟随跳转,大文件用-c - -o断点续传,批量下载用花括号扩展。

Mac终端使用curl下载网页文件,关键在于区分目标是HTML页面本身还是网页中嵌入的可下载资源(如PDF、图片、压缩包),避免把整个网页源码误存为“.html”文件却以为下到了想要的文档。
下载网页源代码(原始HTML)
这一步操作起来很简单,直接把URL粘贴进去就行:curl https://example.com > index.html。
注意:【不加任何参数时,curl默认将响应内容直接输出到终端,而不是保存为文件】。若漏掉重定向符号>或-o参数,你会看到满屏HTML标签,但当前目录里找不到任何新文件。
用-o参数更规范:curl -o page.html https://example.com。
下载网页中链接的真实文件(如PDF、ZIP、IPA)
很多用户复制的是网页上的“下载”按钮链接,但该链接实际指向一个跳转页、登录页或JavaScript渲染页——此时直接curl -O会得到几KB的HTML,而非目标文件。
方法一:确认URL是否直链
打开Safari,右键“下载”按钮 → “在新标签页中打开链接”,观察地址栏最终跳转到的URL。如果末尾是.pdf、.zip、.dmg、.ipa等后缀,且域名稳定(非bit.ly、pgyer.com/app/xxx这类分发页),即可放心用curl -O。
方法二:强制跟随跳转(处理短链、蒲公英plist等)
curl -L -O https://bit.ly/3xYzAbc
没有-L,curl只会下载跳转响应本身;加上后,它会自动请求最终302跳转后的资源地址。
向CurlShip提交产品,这是一个对机器人友好的SaaS目录。只需一条curl命令即可发布产品,支持OG标签抓取、带徽章的dofollow链接及层级升级。
方法三:模拟iOS设备UA获取蒲公英IPA真实地址
蒲公英对非iOS UA返回空白或错误plist,必须显式声明:
curl -L -H "User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1" -o app.plist https://www.pgyer.com/app/plist/abc123
下载大文件并确保断点续传
第一步:执行curl -C - -O https://archive.org/download/large-dataset.tar.gz
第二步:若中途Ctrl+C中断,再次运行完全相同的命令即可续传。
第三步:验证是否生效——查看文件大小是否持续增长,而非从0字节重新开始。
【-C - 必须与-O配对使用;若之前用了-o指定路径,续传时必须保持-o路径和文件名完全一致,否则curl无法识别已有文件】。
批量下载编号连续的网页资源
curl -O http://logs.example.com/access-{20260801..20260807}.log
bash会自动展开为7个独立URL,curl依次请求。注意起止数字位数要一致:{20260801..20260807}正确,{2026081..2026087}会导致中间几个URL 404。
这一步不需要额外安装工具,纯靠shell原生功能,适合日志归档、版本快照等场景。










