使用-o:将文件保存为命令行中指定的文件名的文件中
-O:使用URL中默认的文件名保存文件到本地

# 将文件下载到本地并命名为mygettext.html
curl -o mygettext.html http://localhost/index.html
# 将文件保存到本地并命名为gettext.html
curl -O http://localhost/index.html

使用 -L选项进行强制重定向

# 让curl使用地址重定向,此时会查询google.com.hk站点
curl -L http://localhost/index.html

使用 -C选项可对大文件使用断点续传功能

# 通过添加-C选项继续对该文件进行下载,已经下载过的文件不会被重新下载
curl -C -O http://localhost/index.html

使用 –limit-rate选项对CURL的最大网络使用进行限制

# 下载速度最大不会超过1000B/second
curl --limit-rate 1000B -O http://localhost/index.html

使用 -z选项实现当下载一个文件时,可对该文件的最后修改日期进行判断,如果该文件在指定日期内修改过,就进行下载,否则不下载。

# 若yy.html文件在2011/12/21之后有过更新才会进行下载
curl -z 21-Dec-11 http://localhost/index.html

使用 -u选项提供用户名和密码进行授权

curl -u username:password URL
# 通常的做法是在命令行只输入用户名,之后会提示输入密码,这样可以保证在查看历史记录时不会将密码泄露
curl -u username URL
# 下载xss.php文件
curl -u ftpuser:ftppass -O ftp://localhost/index.html

使用 -T 选项可将指定的本地文件上传到FTP服务器上

# 将myfile.txt文件上传到服务器
curl -u ftpuser:ftppass -T myfile.txt ftp://localhost
# 同时上传多个文件
curl -u ftpuser:ftppass -T "{file1,file2}" ftp://localhost
# 从标准输入获取内容保存到服务器指定的文件中
curl -u ftpuser:ftppass -T - ftp://localhost/myfile_1.txt

使用 -x 选项可以为CURL添加代理功能

# 指定代理主机和端口
curl -x IP:Port http://localhost

使用 –data/-d 方式指定使用POST方式传递数据

# GET
curl -u username https://api.github.com/user?access_token=XXXXXXXXXX
# POST
curl -u username --data "param1=value1¶m2=value" https://api.github.com
# 也可以指定一个文件,将该文件中的内容当作数据传递给服务器端
curl --data @filename https://github.api.com/authorizations

保存与使用网站cookie信息

# 将网站的cookies信息保存到sugarcookies文件中
curl -D sugarcookies http://localhost/sugarcrm/index.php
# 使用上次保存的cookie信息
curl -b sugarcookies http://localhost/sugarcrm/index.php

以上内容整理自:http://www.cnblogs.com/gbyukg/p/3326825.html

Related Posts: curl 命令行整理 :

avatar