命令行网络

如果你是使用实体机进行Linux的使用,那么你的终端网络和实体机网络应该是一致的,如果是虚拟机或者WSL上,那么你的终端可能会通过主机创建的 “虚拟网卡” 进行网络访问,当然这不会对我们这一节学习的内容有太大影响,如果想要了解详细内容,可以学习计算机网络的具体内容

网络下载

在Windows上我们有很多的 「下载器」 例如 「迅雷」,「IDM」等这些软件来下载网络资源和文件,但是在Linux下呢?在一个黑乎乎的终端界面如何进行下载?

下面会介绍两个命令工具,来让我们实现在命令行中进行轻量的下载活动

Wget

wget是强力方便的下载工具,可以通过HTTP 和 FTP 协议从因特网中检索并获取文件。

Wget 的特点

  • 支持以非交互方式工作,能够在用户注销后在后台进行工作。
  • 在不稳定的连接中依旧可以正常工作,支持断点续传功能。
  • 支持 HTML 页面以及 FTP 站点的递归检索,您可以使用它来获取网站的镜像,或者像爬虫一样遍历网络。
  • 在文件获取时可以增加时间标记,因此可以自动识别远程文件自上次检索后是否发生更改,并自动检索新版本。
  • 支持代理服务器,以减轻网络负载,加快检索速度。

使用 wegt 非常简单,对于普通的下载任务使用下面命令即可

wget [URL]

当然wget支持一些参数,下表列出一些常见参数,更多参数可以使用 wget -h 获取

选项含义
-i--input-file=文件下载本地或外部文件中的 URL
-O--output-document=文件将输出写入文件
-b--background在后台运行 wget
-d--debug调试模式,打印出 wget 运行时的调试信息

cURL

cURL (curl) 是一个利用 URL 语法在命令行下工作的文件传输工具,其中 c 意为 client。

其实比起进行下载,curl似乎更适合网络调试等工作,因为cURL 可自定义各种请求参数,在模拟web请求方面更加擅长

调试工具