curl使用示例
一个用于传输数据的命令行工具,常用于通过 URL 从服务器下载或上传数据。本文是curl的几个常用命令行用法。
下载文件
- 指定保存的文件名称下载文件
curl https://www.baidu.com -o baidu.txt - 用 URL 指定的资源文件名保存下载文件(URL 必须指向具体的文件名)
curl https://www.baidu.com/index.html -O - 指定 Usaer-Agent 和 Referer 请求头的值, 下载文件
curl -A "Mozilla/5.0 Chrome/70.0.3538.110 Safari/537.36" -e "https://www.baidu.com/" https://www.baidu.com/index.html -O - 指定Authorization请求头的值, 下载文件
参数格式: -H “NAME: VALUE”curl -H "Authorization: a112121dada" https://www.baidu.com/index.html -O
curl -fsSL
这是一个在 Linux/macOS 系统中非常常见的命令组合,通常用于下载和执行远程安装脚本。
- -f 或 –fail:
在服务器返回错误时(如 HTTP 404 未找到)静默失败,不显示 HTML 错误页面。
这使得脚本在出错时能够更好地处理,而不是继续处理错误的页面内容。 - -s 或 –silent:
静默模式。不显示进度条或错误信息。
这使得输出更干净,只返回实际内容,适合在脚本中使用。 - -S 或 –show-error:
与 -s 结合使用时,在失败时显示错误信息。
这样既保持了静默模式,又能在出现问题时看到错误详情。 - -L 或 –location:
如果服务器返回重定向(如 301、302),自动跟随重定向到新的 URL。
这对于下载经常被重定向的安装脚本非常重要。
curl -fsSL 的意思是:”安静地下载这个文件,如果服务器报错就失败并显示错误信息,如果遇到重定向就自动跟随。”
这个组合最常见于各种软件的安装脚本,例如 Docker 的安装:
1 | curl -fsSL https://get.docker.com -o get-docker.sh |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 折腾日记!
评论