这个卷曲command使用一系列通用协议(包括HTTP、HTTPS、FTP和SMB)通过网络或从internet传输文件。使用它访问FTP站点、发送电子邮件、连接到SAMBA地址、上载和下载文件以及相关任务。
这个卷曲命令有许多参数。您可以在上看到这些参数的完整列表卷曲手册页.
“curl”命令的基本用法
在其基本形式中,卷曲下载网页内容到终端窗口.
例如,在终端窗口中输入以下命令:
curl http://www.google.com
谷歌的登陆页面的HTML显示在标准输出中。
将'curl'的内容指向一个文件
当您下载一个对象(如ISO映像)时,请将其发送到文件中,而不是发送到标准输出。
要将内容保存到文件,请指定- o开关如下:
curl - o
要下载在基本命令使用部分链接到的页面,输入以下命令:
curl-o google.htmhttp://www.google.com
下载完文件后,在编辑器或由文件类型决定的默认程序中打开它。
可以通过使用- o开关如下:
旋度-Ohttp://www.google.com/index.html
此开关使用URL的文件名部分,并使其成为保存URL的文件名。
这个- o和- o开关必须引用特定的文件;它们不能泛指文件夹或顶级URL。这个卷曲在这种情况下,命令会报告无长度错误。
在后台运行“curl”
默认情况下卷曲命令会显示一个进度条,告诉您还剩下多少传输以及已经传输了多少数据。
如果你只是想让命令在没有进度条的情况下运行,你需要在静默模式下运行它。那就把它当作后台命令.
要以静默方式运行命令,请使用- s开关:
旋度-s-O
在后台执行命令时,使用“&”,如下所示:
curl -s -O &
运行卷曲不带进度条的命令更为精简,但您不知道传输需要多长时间,也不知道传输应该完成多长时间。
使用curl下载多个url
以最简单的形式,通过按顺序指定几个URL,同时下载它们:
旋度-Ohttp://www.mysite.com/page1.html -Ohttp://www.mysite.com/page2.html
若要下载大量具有通用命名模式的文件,请使用方括号提供范围。例如,要获取后缀为1到100的图像文件,请指定以下参数:
旋度-Ohttp://www.mysite.com/images/image[1-100].jpg
使用花括号指定具有类似格式的多个站点。
例如,要下载www.google.com和www.bing.com的索引页,请使用以下命令:
curl - o http://www。{谷歌,bing}。com
您的shell可以根据需要重写这些命令。了解有关相关上下文的正则表达式的更多信息。
显示进度
默认情况下卷曲命令在下载URL时返回以下信息:
- 总%:已完成传输总量的百分比。
- 总计字节:以字节为单位的传输的总大小。
- 已收/已转%:完成传输的百分比。
- 接收/传输的字节数:下载的字节数。
- 平均下载速度:下载速度(以字节/秒为单位)。
- 平均上传速度:上传速度(以字节/秒为单位)。
- 总时间:完成当前操作的估计时间。
- 时间:时间从开始转移开始。
- 时间了:完成传输的预期时间。
- 当前速度:当前的传输速度,单位为字节/秒。
如果您想要一个简单的进度条,请指定- #开关如下:
curl - # - o
处理重定向
这个卷曲命令很聪明,因为它可以跟踪重定向。你所要做的就是使用- l开关如下:
旋度
从FTP服务器下载文件
这个卷曲命令处理的不仅仅是HTTP文件传输。它可以处理FTP、GOPHER、SMB、HTTPS和其他格式。
从一个FTP服务器,使用以下命令:
Curl -u user:password -o
如果指定文件名作为URL的一部分,它将下载该文件,但如果指定文件夹名,它将返回文件夹列表。
使用卷曲将文件上传到FTP服务器。
curl -u user:password
文件名和使用与下载多个HTTP文件相同的模式匹配。