curl
跳转到导航
跳转到搜索
默认情况下,curl获取远程文件并把它打印到标准输出。
参数
输出
-i, --include
- 包含头部信息
-I, --head
- 只获取头信息(
HEAD
方法) -s
- 不显示进度。默认情况下在使用管道时进度信息会显示在标准错误上
-S
- 出错时显示消息,与
-s
连用 -o, --output
- 输出到指定文件
-O
- 按远程文件名原名保存
-v
- 显示请求头和响应头等信息
--libcurl <file>
- 生成对应的 libcurl 调用代码(HTTP 操作仍会执行)
输入
-d, --data
- 指定
POST
数据,类型为application/x-www-form-urlencoded
,与-F
选项不同。给定-G
时使用GET
-A, --user-agent
- 指定UserAgent
-e, --referer
- 指定referer
-G, --get
- 在提交表单数据时使用
GET
方法 -H, --header HEADLINE
- 指定任意头信息
-u, --user
- 指定用户名和密码,形式
username:password
-F name=value
- 指定表单数据,类型为
multipart/form-data
,与-d
不同;上传文件时value
为@filename
。可以指定类型或者文件名,如:
curl -F "file=@localfile;filename=nameinpost" url.com
代理
使用 socks5 代理解析域名并下载文件:
curl --socks5-hostname 127.0.0.1:1080 'http://www.example.net' -o filename
本地解析域名,使用 --socks5
参数。
当同时使用 --connect-to
和 --socks5-hostname
时,curl 会设置 socks5 代理连接的地址类型为域名,但值却为 --connect-to
中指定的 IP。
通配符
如
curl -o '#2_#1.jpg' http://cgi2.tky.3web.ne.jp/~{zzh,nick}/[001-201].jpg
协议
FTP
通过 FTP 上传文件:
curl -T file -u user:pass ftp://host/path
dict 协议
curl dict://dict.org/d:computer
参见
- proxychains,支持多种多重代理,但使用配置文件而不是命令行设置。
- wget
外部链接
- curl简单教程 » 进出自由才是游戏者的生存之道
- curl网站开发指南 - 阮一峰的网络日志
- cURL - Tutorial
- libcurl的暗坑 | fengjian'blog
- 使用 curl -sS 请求失败时返回失败的返回值 | 小马过河
- curl-third-party-world-map.jpg