IT技术博客大学习 共学习 共进步

软件推荐:curl

lyoe's blog 2009-11-12 19:00:54 浏览 3,623 次

curl 是一个传输文件(上传/下载)的命令行工具,它支持FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE 和 LDAP 等多种协议。

如果你是Mac用户,那么恭喜你,Mac OS X 里已经预装了curl;如果你是linux用户,应该已经对curl了如指掌。

curl也有windows版本:7.18.2(目前为止最新版)

curl可以做什么?

可以下载文件

使用命令:curl -O http://www.google.cn/logos/goog_e.gif.文件保存在运行命令的当前目录。

curl -o google.gif http://www.google.cn/logos/goog_e.gif。对下载文件重命名。

可以断点续传curl -C - -o google.gif http://www.google.cn/logos/goog_e.gif。使用了“-C -”.

可以看请求的header信息,以及跳转信息

    curl-IL

可以获取页面源码

curl http://www.inness.cn

以上提到的,只是curl万分之一的功能,如果希望了解 curl 的更多功能,可以用命令:curl -h 查看帮助,或者从网站上获得完整的文档,也可查看实际应用的例子。

为什么要用curl?

借用apple4us的话:

  • 聚焦功能,而非软件。如果想喝一瓶啤酒,先要做什么呢?不是去找一个酒瓶启子,而是要打开瓶盖。我们需要的是完成一个任务,而不是去使用一种工具。我见过有人用牙齿、筷子、打火机或用另一个瓶子打开瓶盖,所以完成任务有很多种方法,根据情景和要求的不同也就会有不同的选择。比如下载文件,你可以使用图形化的软件,也可以像我一样就用内置的命令行。因为我需要的功能很简单--能够断点续传文件。只要记住几个简单的命令就,能完成我需要的功能,而且也不需要安装额外的软件,又何乐而不为呢?
  • 一次学习,终生受益。我认为自由软件的最大的竞争优势之一就是--学习成本低。比如我现在学会了 curl,不仅仅能在 Mac 里使用它,有很多 Linux 版本也内置了这个软件,而且它还有几乎所有操作系统的版本(包括Unix, Linux, Solaris, Windows, 甚至 DOS)。所以,只要学习一次,就能随处可用。而且你通过自由软件学习的知识,可以得到很好的延续和保值。不知您注意了没有――在 GmailBloglines 的快捷键里,都用 j 移动到下一条记录,用 k 移动到上一条记录,难道会这么巧吗?我相信这是有原因的。因为在文本编辑器 Vim 中,j 和 k 就是用来向下和向上移动。而 Vim 作为历史悠久的自由软件,出现在几乎所有 Linux 版本中,而且也预装在 Mac 里。这也说明,智慧是跨越时空的,是广受尊重的。而在自由软件中蕴涵的智慧,不但在自由软件界得到广泛传播,而且也扩展到更广的空间,所以你的学习成本也得到更好地保护。现在也不难理解――为什么 Firefox 中的 Quick Find 会使用 / 来激活了吧!

建议继续学习

  1. Rolling cURL: PHP并发最佳实践 (阅读 11,363)
  2. curl 命令使用cookie (阅读 9,844)
  3. curl检查访问网页返回的状态码 (阅读 7,701)
  4. PHP用CURL伪造IP和来源 (阅读 5,305)
  5. curl测试下载速度 (阅读 5,183)
  6. cURL基础教程 (阅读 4,923)
  7. curl快速实现网速测试 (阅读 4,702)
  8. curl常用功能简介 (阅读 3,985)
  9. 前端开发中的性能那点事(二)巧用curl 并发减少后端访问时间 (阅读 3,562)
  10. PHP重用curl句柄, CURLOPT_HTTPGET的BUG (阅读 2,960)