说到上网,我们日常认知就是用浏览器,打开某个URL网址来输入某个地址来访问一些页面,或者软件通过网络来实现一些功能。不过,对于一个技术人员而言,出于效率或工作需要,有时候肯定不会循规蹈矩用商业化或可视化UI的浏览器来上网。所以,专为技术人程序员而生的命令行“上网”工具就诞生了。
上网之所以打引号,主要还是,命令行上网,虽然可以通过curl实现,不过和我们日常上网那种多媒体展现形式差别很大。毕竟,人家定位就是,命令行。机智客需要说明的是,命令行工具curl其实是命令行下的文件传输工具。所以我们可以在终端或CMD窗口下用curl查看或下载一些东西,但肯定和我们平时点击超链接看图看视频有区别的。
命令行下的文件传输工具curl,就是CommandLine Uniform Resource Locator,我们习惯把它称为下载工具,它用URL语法,所以我们可以用它来访问网页。基本的使用就是在命令行或终端shell里输入:curl http://www.xxx.com。我们可以用curl +网页提交get表单,加参数可以提交Post表单。
命令行文件传输工具curl的使用很简单,网上的资料太多了,随便百度一下就能找到它的用法格式,所以我们就不再赘述。虽然网上资料都在介绍curl怎么使用,不过关于安装它的事就没那么多了。命令行工具的安装,还是和其他GUI之类的软件不太一样的。
所以不谈curl的使用,简单说下安装的问题。因为它是命令行工具,所以我们使用它就要通过终端或CMD。而如果没有安装,你直接在终端或cmd里输入curl+网址肯定是不行的。在终端shell中安装,机智客估计大家都会。毕竟,能玩shell的,都是在Linux发行版操作系统,而能玩Linux操作系统的,基本都知道安装软件和执行这些基础操作。同样,curl的安装,在Linux操作系统中就是基本的操作,终端命令行玩熟了,挺快的。所以Linux系统下的安装就不说了。而到了Windows操作系统里,根本就没有shell这样强大的终端,只有一个“半成品”cmd。用cmd安装软件,往往比较怪异。当然我们也不是没遇到过,比如Python的pip命令就是在cmd里安装软件的。
Windows系统下安装curl,按装官方文档的说法,需要构建Windows DLL和C运行时(CRT)链接问题。这里还涉及到MinGW32编译器。在以前的文章里,机智客介绍过MinGW32的话题。所以我们的电脑里是安装配置过的。但不管如何,curl官方的文档详细得让人发憷。不过要在Windows安装curl,居然也可以用一句话的命令行安装,那就是choco install curl。
虽然看似简单,不过这个命令还是有前提的,choco就是一个新的命令,所以你的电脑里要安装有这个choco(对应的是包管理工具Chocolatey)才能让系统识别出来,类似于pip这种第三方命令行工具。包管理工具Chocolatey可以让我们像Linux程序员一样在命令行下安装软件。往往是一个命令安装,很方便。