curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。
它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。
常用参数:
1.用来读取一个URL地址内容:
curl http://www.gbin1.com
2.读取一个web地址并且保存到一个文件中:
curl -o gbin1.html http://www.gbin1.com/
3.读取一个需要HTTP Basic认证的页面:
curl -u username:password http://www.gbin1.com/
4.如果页面有重定向,注意curl不会自动处理,你需要添加参数,如下:
curl -L http://www.gbin1.com/404
curl -OL https://github.com/kennethreitz/requests/tarball/master
5.使用参数读取URL页面:
curl http://www.gbin1.com/bloghome.html?firstentry=15
6.同时如果你需要下载所有页面,你可以使用正则表达式:
curl http://www.gbin1.com/bloghome.html?firstentry=[1-15]
7.获取头消息:
curl --head http://www.gbin1.com/
8.支持读取其它类型文件,例如,图片:
curl --head http://www.gbin1.com/gbin1/themes/gbin1_2column_bloghome/images/logo.png
9.将头信息dump保存到文件
curl --dump-header headers.txt http://www.gbin1.com/
10.处理FTP
curl ftp://username:[email protected]
11.获取指定目录,如下:
curl ftp://username:[email protected]/technology/
12.上传文件:
curl -T uploadfilename -u username:password ftp://gbin1.com/somefilename
被上传的文件uploadfilename将会被上传到远端并且改名为somefilename。
13.使用POST方法来获取页面
curl -d "username=terry&password=123&submit=login" www.gbin1.com/login.php
需要登录
curl --cookie-jar "cookie.txt" -d "username=terry&password=123" http://www.gbin1.com/login.php
curl -b "cookie.txt" http://www.gbin1.com/showusers.php
14.Referer和User Agent
如果你希望能够模拟生成referer字段,你可以使用-e参数,如下
curl -e http://www.google.com http://www.gbin1.com/
15.当然,你也可以模拟不同的用户端代理(user-ageng)字段,如下:
curl -A "Mozilla/5.0(compatible; MSIE 7.01; Windows NT 5.0)" http://www.gbin1.com
来源:http://www.gbtags.com/technology/javautilities/20120610curl-introduction/
还可以参考:http://www.cnblogs.com/wangkangluo1/archive/2012/04/17/2453975.html