shell执行curl_Linux Shell脚本编程--curl命令详解

用途说明

curl命令是一个功能强大的网络工具,它能够通过http、ftp等方式下载文件,也能够上传文件。其实curl远不止前面所说的那些功能,大家可以通过man curl阅读手册页获取更多的信息。类似的工具还有wget。

curl命令使用了libcurl库来实现,libcurl库常用在C程序中用来处理HTTP请求,curlpp是libcurl的一个C++封装,这几个东西可以用在抓取网页、网络监控等方面的开发,而curl命令可以帮助来解决开发过程中遇到的问题。

常用参数

curl命令参数很多,这里只列出我曾经用过、特别是在shell脚本中用到过的那些。

-A:随意指定自己这次访问所宣称的自己的浏览器信息

-b/--cookie cookie字符串或文件读取位置,使用option来把上次的cookie信息追加到http request里面去。

-c/--cookie-jar 操作结束后把cookie写入到这个文件中

-C/--continue-at   断点续转

-d/--data    HTTP POST方式传送数据

-D/--dump-header 把header信息写入到该文件中

-F/--form 模拟http表单提交数据

-v/--verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。

-m/--max-time 指定处理的最大时长

-H/--header 指定请求头参数

-s/--slient 减少输出的信息,比如进度

--connect-timeout 指定尝试连接的最大时长

-x/--proxy 指定代理服务器地址和端口,端口默认为1080

-T/--upload-file 指定上传文件路径

-o/--output 指定输出文件名称

--retry 指定重试次数

-e/--referer 指定引用地址

-I/--head 仅返回头部信息,使用HEAD请求

-u/--user 设置服务器的用户和密码

-O:按照服务器上的文件名,自动存在本地

-r/--range 检索来自HTTP/1.1或FTP服务器字节范围

-T/--upload-file 上传文件

使用示例

1,抓取页面内容到一个文件中

[root@xi mytest]#

你可能感兴趣的:(shell执行curl)