linux 系统下载安装文件命令的差异

发布于 更新于
本文目录
  1. curl
  2. 常用案例
  3. wget
  4. 常用案例
  5. rpm
  6. dpkg

技术文章性能测试

如果有这么一个需求,让你在linux系统里面下载一个文件,然后安装,你会想到哪些命令呢?相信很多人都会想到,直接使用yum或者apt-get命令。这两个命令虽然很方便也很快捷,但是存在一个问题,如果这个Linux系统发行方没有提供你需需要的

如果有这么一个需求,让你在linux系统里面下载一个文件,然后安装,你会想到哪些命令呢?相信很多人都会想到,直接使用yum或者apt-get命令。这两个命令虽然很方便也很快捷,但是存在一个问题,如果这个Linux系统发行方没有提供你需需要的工具的安装原文件,那这两个命令是无法安装对应的软件的。那除了这两个命令之外,你还会想到其他什么命令呢?哪你可能就会想到wget或curl命令了。对,这两个命令也是大家比较常用的,在Linux系统里面来下载源文件,然后进行安装的命令,那这一下子就出来了4个命令,那这4个命令之间他们有什么区别点呢?

curl

Curl(CommandLine URL)是linux中比较强大的一个文件上传下载的工具。使用URL的语法进行数据的传输或者文件的传输。在现在大多数的Linux系统中,已经自带了这个命令,无需安装,直接可以使用。

我们可以在命令行中输入 curl --help,来查看帮助信息。

curl20210518151739.png

我们可以看到它的参数非常多,也就是说它的功能非常的强大,可以使用不同的参数实现不同的功能。这么多的参数,是不是所有的参数都需要掌握呢,并不是,我们只需要掌握其中一些常用的就可以了,当你不知道怎么用的时候可以通过 --help来查看帮助文档即可。

参数

用法

-o / --output

把结果输出到指定文件

-O / --remote-name

把输出写入该文件中并保留远程文件的文件名

-T / --upload-file<file>

上传文件

-u / --useruser[:password]

使用用户名和密码

-A / --user-agent<string>

模拟浏览器设置ua访问

-c / --cookie-jar<file>

操作结束后,把cookie写入到文件中

-C / --continue-at<offset>

断点续传

-D / --dump-header<file>

把header的信息写入到文件

-x / --proxyhost[:port]

在给定的端口上使用HTTP代理

-# / --progress-bar

进度条显示传输状态

常用案例

  1. 直接访问某个地址

curl https://www.baidu.com
# 访问地址,不下载
curl20210518153908.png
  1. 访问地址并重新保存到指定文件

curl https://www.baidu.com >> baidu.html
# 或者
curl -o baidu_homepage.html https://www.baidu.com
curl20210518154317.png
  1. 使用代理方式访问

curl -x 192.168.x.x:port http://www.lemonban.com
curl20210518155214.png
  1. 模拟浏览器访问

curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36 Edg/90.0.818.62" https://www.baidu.com
curl20210518155847.png
  1. 断点续传,可以从断点继续开始下载

curl -C 3 -o jmeter.tar.gz https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz
curl20210518160704.png

wget

wget也是Linux下常用于文件上下传的一个工具,它开放源代码,但是要在Linux中使用这个命令必须先安装。

# centos wget安装
yum install wget -y

# ubuntu wget安装
apt-get install wget -y

我们也可以使用 wget --help来获得帮助

wget20210518161419.png

如果你使用了Linux系统,安装了中文字符集编码,通过这个帮助文档是可以直接看到中文帮助信息的。这对于学习人员来说学习起来会相对更加容易一些。

参数

用法

-o,--output-file=FILE

将日志写入文件

-O,--output-document=FILE

重命名文件下载

-t,--tries=NUM

设置失败重试次数

-c,--continue

断点续传

-T,--timeout=sec

设置超时时间

--connect-timeout=sec

设置连接超时时间

--read-timeout=sec

设置读取超时时间

-r, --recursive

指定递归下载

-l, --level=NUM

最大递归深度

常用案例

  1. 下载文件,以文件名称保存文件。

wget https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz
wget20210518164625.png
  1. 下载文件,以自定义名称保存文件。

wget -O jmeter.tgz https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz
wget20210518164737.png
  1. 断点续传下载文件

wget -c https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz
wget20210518165105.png
  1. 后台寂寞方式下载文件。

wget -b https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz
wget20210518165316.png
  1. 指定重试次数下载

wget -t 2 https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz
wget20210518170127.png

rpm

rpm(redhat package manager) 是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎,平时大家使用的centos系统,就是 red hat的发行版本,所以使用rpm命令来安装文件比较常见。

rpm的功能非常强大,也可以使用 rpm--heep 来获得帮助信息

rpm20210518170928.png

我们最常用的可能的有 rpm -ivh xx.x.rpm 和 rpm -Uvh xx.x.rpm ,那这个里面的几个参数分别是代表什么意思呢?

参数

用法

-i,--install

安装软件包,后面可以直接跟上包的文件,也可以跟上包的地址

-U, --upgrade

升级软件包,后面可以直接跟上包的文件,也可以跟上包的地址。

-v,--verbose

打印详细输出

-h,--hash

安装时列出标记

使用这两个命令安装或升级软件包时,并不会把软件包的相关依赖下载或升级。而yum命令安装rpm包时,才会把相关的依赖包自动下载和安装。

dpkg

dpkg是debian系统家族的安装工具命令。

dpkg20210518172842.png

如果你下载了deb格式的文件,那么使用 dpkg -i xx.x.deb 就可以安装文件

好了,这些就是我们在linux系统中常用的安装命令,你能明白他们之间的差异了吗?

来源:testingpai

继续阅读