目录
- 1. 什么是curl和wget
- 1.1 curl
- 1.2 wget
- 1.3 curl和wget的区别
- 2. 安装curl
- 2.1 利用wget安装curl
- 2.2 直接下载curl源码编译安装(推荐)
- 3. 安装wget
- 3.1 利用Homebrew安装wget
- 3.1.1 Homebrew的安装
- 3.1.2 Wget安装
- 3.1.3 卸载Homebrew
- 3.2 从GNU Wget下载源码包编译安装
1. 什么是curl和wget
1.1 curl
curl,全称CommandLine URL或CommandLine Uniform Resource Locator,在Linux中curl是利用URL规则在命令行下工作的文件传输工具,可以说是一款开源的强大的http命令行工具。它支持文件的上传和下载,是综合传输工具。
1.2 wget
wget名称来源于World Wide Web和get的结合,也是Linux系统中开源的用在命令行下的下载文件工具,支持HTTP、HTTPS和FTP协议,可以使用HTTP代理。
1.3 curl和wget的区别
- wget是专职的下载利器,简单而专一;curl可以下载,但长项在于模拟提交web数据,POST/GET请求,调试网页等。
- wget是纯粹的命令行命令;curl是libcurl库支持的。
- wget只支持上述三个协议;curl支持更多协议:FTP、FTPS、HTTP、HTTPS、SCP、SFTP、TFTP、TELNET、DICT、LDAP、LDAPS、FILE、POP3、IMAP、SMTP、RTSP
- wget支持递归下载;curl没有这个功能
参考:cURL和Wget的优缺点、curl和wget区别
2. 安装curl
2.1 利用wget安装curl
如果有wget那么安装curl就非常简单。终端:
$ wget -c http://curl.cs.pu.edu.tw/download/curl-7.3.3.0.tar.gz
$ ./configure --prefix=/usr/local/curl
$ make
$ sudo make install
如果最后一步报错,可能是路径权限问题,尝试
$ sudo make install
就可以了。在终端输入curl检测是否安装成功。
参考:Mac 编译安装curl
2.2 直接下载curl源码编译安装(推荐)
- 从curl官网上curl Releases and Downloads下载最新的curl源码
- 终端:进入解压后的curl目录
我是放在Download目录下直接解压的
$ cd Downloads
$ cd curl-7.74.0
- 终端:设置安装路径
$ ./configure --prefix=/usr/local/curl
- 终端:编译和安装
$ make
$ sudo make install
在终端输入curl命令,如果提示
curl: try 'curl --help' or 'curl --manual' for more information
就说明安装成功了,可以通过–help命令查看curl的命令。
若最后一步make install命令报错
install: /usr/local/curl/lib/libcurl.4.dylib: Permission denied
make[2]: *** [install-libLTLIBRARIES] Error 71
make[1]: *** [install-am] Error 2
make: *** [install-recursive] Error 1
没关系,可能是你设置的目录有权限限制,前面加上sudo命令输入password重新安装一遍就可以了。
$ sudo make install
参考:https://blog.51cto.com/armyshen/1401279
3. 安装wget
3.1 利用Homebrew安装wget
Homebrew是一款非常强大的可以应用在MacOS中的Linux管理包,可以用来安装需要的软件,方便卸载和升级。
首先在终端输入brew,测试是否存在Homebrew,没有的话直接从官网安装就可以了。
3.1.1 Homebrew的安装
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/isntall/master/install)"
一般如果网络连接正常的话,这样就可以安装成功了。我曾经遇到过一个问题是
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fetal: The remote end hung up unexpectedly
这种情况我没有查到现有的解决方法,但是clone之后歪打正着竟然解决了,方式如下:
$ git clone
$ https://raw.githubusercontent.com/Homebrew/isntall/master/install --depth 1
这时在local下会出现homebrew-core命名的文件夹,进入
$ cd homebrew-core
$ git fetch --unshallow
homebrew安装完成。
3.1.2 Wget安装
利用brew安装Wget非常简单。终端:
$ brew install wget
安装完成。
3.1.3 卸载Homebrew
既然写到了homebrew的安装,顺便提一下如何卸载。
$ cd 'brew --prefix'
$ rm -rf Cellar
$ brew prune
$ rm 'git ls-files'
$ rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions
$ rm -rf .git
$ rm -rf ~/Library/Caches/Homebrew
参考:Mac下homebrew的安装与卸载、Mac下安装Homebrew的经历
3.2 从GNU Wget下载源码包编译安装
- 从GNU Wget下载最新的wget源码包,我用的是wget2-1.99.2
- 下载后解压到目标路径
- 终端:cd 进入到解压目录
$ ./configure
- 终端:编译安装
$ make
$ sudo make install
和curl的编译安装方式相同,最后在终端输入wget检测是否安装成功。
这种方法经常会遇到的问题是configure这步找不到pkg-config或者pkg-config版本太旧,导致make时报错
make: *** [abort-due-to-no-makefile] Error 1
可以尝试将pgk-config添加到环境中,或者在安装了curl的前提下,终端直接运行:
$ curl https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.tar.gz -o pgkconfig.tgz
$ tar -zxf pkgconfig.tgz && cd pkg-config-0.29
$ ./configure && make install
然后再尝试wget的安装。如果还是报这种错误,可以尝试用第一种方法Homebrew,这种方式还是比较好用的。
参考:Mac OS 安装Wget、Mac安装wget的两种方法
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)