curl 是一个用于与服务器进行数据交换的命令行工具,支持多种协议,如 HTTP、HTTPS、FTP、SFTP 等。常用于下载文件、上传数据、测试 API、查看 HTTP 响应头等操作。以下是 curl 命令的基本用法和一些常见示例。
1. 基本语法
curl [options] [URL]
2. 常用选项
-X
-d : 用于 POST 请求发送数据
-H
-u
-i: 包含 HTTP 响应头
-o
-O: 下载并保存文件,文件名与 URL 中的文件名相同
-L: 跟踪重定向
-v: 显示详细的请求和响应信息
-k: 忽略 SSL 证书验证 (用于 HTTPS)
-A
-F
3. 常见用法示例
3.1. 获取网页内容 (默认 GET 请求)
curl https://www.example.com
3.2. 获取网页并显示响应头 (-i)
curl -i https://www.example.com
3.3. 下载文件并保存到指定位置
curl -o filename.html https://www.example.com
3.4. 下载文件并使用 URL 中的文件名
curl -O https://www.example.com/file.zip
3.5. 使用 POST 请求发送数据
curl -X POST -d "name=John&age=30" https://www.example.com/form
3.6. 使用 JSON 数据发送 POST 请求
curl -X POST -H "Content-Type: application/json" -d '{"name": "John", "age": 30}' https://www.example.com/api
3.7. 设置请求头
curl -H "Authorization: Bearer your_token" https://www.example.com/api
3.8. 使用基本认证
curl -u username:password https://www.example.com/protected
3.9. 跟踪 HTTP 重定向
curl -L https://www.example.com
3.10. 忽略 SSL 证书验证(适用于 HTTPS)
curl -k https://www.example.com
3.11. 获取 HTTP 状态码
curl -o /dev/null -s -w "%{http_code}\n" https://www.example.com
3.12. 上传文件
curl -F "file=@/path/to/file" https://www.example.com/upload
3.13. 使用 GET 方法并设置自定义的 User-Agent
curl -A "MyCustomUserAgent/1.0" https://www.example.com
4. 调试与查看详细信息
4.1. 查看请求和响应的详细信息(包括头信息)
curl -v https://www.example.com
4.2. 调试请求(显示请求的详细信息)
curl --trace-ascii trace.txt https://www.example.com
5. 高级用法
5.1. 设置超时限制
curl --max-time 30 https://www.example.com
5.2. 支持 FTP 上传文件
curl -T /path/to/local/file ftp://ftp.example.com/remote/path/
5.3. 使用代理
curl -x http://proxy.example.com:8080 https://www.example.com
5.4. 并行请求(使用 -Z 启用多线程)
curl -Z https://www.example1.com https://www.example2.com
总结
curl 是一个非常灵活和强大的命令行工具,可以帮助用户执行各种 HTTP(S) 请求、上传和下载文件、调试 API 等。掌握其常用选项,可以大大提高你的工作效率,尤其是在与 API 交互和进行网络调试时。
海信电视上如何安装爱奇艺
😕这阵容……美国男篮世界杯名单已确定10位 星光着实有点黯淡