【Linux】上传、下载、压缩、解压

一、上传、下载

1.1 FinalShell文件系统

我们可以通过FinalShell工具,方便的和虚拟机进行数据交换。

在FinalShell软件的下方窗体中,提供了Linux的文件系统视图,可以方便的:

  • 浏览文件系统,找到合适的文件,右键点击下载,即可传输到本地电脑
  • 浏览文件系统,找到合适的目录,将本地电脑的文件拓展进入,即可方便的上传数据到Linux中

FinalShell界面自带的文件系统可以将虚拟机Linux中的文件下载到Windows上

右击选择的文件

下载完成后可以找到相应的文件:

1.2 rz、sz命令

当然,除了通过FinalShell的下方窗体进行文件的传输以外,也可以通过rz、sz命令进行文件传输。

rz、sz命令需要安装,可以通过:yum -y install lrzsz,即可安装。

  • rz命令,进行上传,语法:直接输入rz即可

没下载这个程序可以使用下面命令下载一下:

shell 复制代码
 sudo apt -y install lrzsz

输入后有相应的文件弹出来,直接选择即可:

shell 复制代码
rz
  • sz 命令用于下载虚拟机上的文件到当前操作系统

语法:

复制代码
sz 下载的文件

比如,下载hello.txt

shell 复制代码
sz hell.txt

输入后等待下载完毕即可

二、压缩、解压

2.1 压缩格式

市面上有非常多的压缩格式

  • zip格式:Linux、Windows、MacOS,常用
  • 7zip:Windows系统常用
  • rar:Windows系统常用
  • tar:Linux、MacOS常用
  • gzip:Linux、MacOS常用

在Windows系统中常用的软件如:winrar、bandizip等软件,都支持各类常见的压缩格式,这里不多做讨论。

我们现在要学习,如何在Linux系统中操作:tar、gzip、zip这三种压缩格式,完成文件的压缩、解压操作。

2.2 tar命令

Linux和Mac系统常用有2种压缩格式,后缀名分别是:

  • .tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装
  • .gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积

针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作

语法

复制代码
tar [-c -v -x -f -z -C] 参数1 参数2 参数3 ... 参数N
  • -c,创建压缩文件,用于压缩模式
  • -v,显示压缩、解压过程,用于查看进度
  • -x,解压模式
  • -f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
  • -z,gzip模式,不使用-z就是普通的tarball格式
  • -C,选择解压的目的地,用于解压模式

tai命令压缩

tar的常用组合为:

  • tar -cvf test.tar 1.txt 2.txt 3.txt 将1.txt 2.txt 3.txt :压缩到test.tar文件内
  • tar -zcvf test.tar.gz 1.txt 2.txt 3.txt 将1.txt 2.txt 3.txt :压缩到test.tar.gz文件内,使用gzip模式

注意:

  • -z选项如果使用的话,一般处于选项位第一个
  • -f选项,必须在选项位最后一个

这里演示几个例子:

  • 生成tar类型的压缩包test.tar
shell 复制代码
tar -cvf test.tar 1.txt,2.txt,3.txt

生成完成后,查看压缩包的大小

shell 复制代码
ls -lh

可以发现,大小没变小,反而变大了

  • 生成gzip格式的压缩包
shell 复制代码
tar -zcvf test2.tar.gz 1.txt 2.txt 3.txt

单位默认是字节,可以发现比原来小很多了

tar解压

常用的tar解压组合有

  • tar -xvf test.tar:解压test.tar,将文件解压至当前目录
  • tar -xvf test.tar -C /home/liuhang:解压test.tar,将文件解压至指定目录(/home/liuhang)
  • tar -zxvf test.tar.gz -C /home/liuhang:以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/liuhang)

注意:

  • -f选项,必须在选项组合体的最后一位
  • -z选项,建议在开头位置
  • -C选项单独使用,和解压所需的其它参数分开

这里演示解压之前的压缩包:

  • 解压tar压缩包:
shell 复制代码
tar -xvf test.tar -C ~/
  • 解压tar.gz 文件
shell 复制代码
tar -zxvf test1.tar.gz 

不加解压目录,默认解压到当前目录

2.3 zip命令

zip命令压缩文件

可以使用zip命令,压缩文件为zip压缩包
语法:

复制代码
zip [-r] 参数1 参数2 参数3 ... 参数n
  • -r,被压缩的包含文件夹的时候,需要使用-r选项,和rm、cp等命令的-r效果一致

  • 使用zip命令压缩文件

shell 复制代码
zip testZ.zip 1.txt 2.txt 3.txt
  • 使用zip压缩文件夹
shell 复制代码
zip -r testZ2.zip 123txt

unzip命令

unzip 命令解压文件

使用unzip命令,可以方便的解压zip压缩包

语法:

复制代码
unzip [-d] 参数
  • -d,指定要解压去的位置,同tar的-C选项

  • 参数,被解压的zip压缩包文件

  • 解压zip压缩包到当前文件夹

shell 复制代码
unzip testZ2.zip

如果出现同名文件,可以选择是否覆盖

  • 解压zip压缩包到指定文件
shell 复制代码
unzip testZ.zip -d ./Test
相关推荐
祖力553 分钟前
Linux系统移植、烧录与环境的搭建
linux·运维·服务器
对讲机数码科普11 分钟前
从电路原理到协议栈:模拟对讲机与数字对讲机的技术内核拆解
运维·网络·架构·软件工程
打工仔折腾 AI13 分钟前
极空间用 Docker 部署 Photopea:网页版 PS 的私有化实践
运维·后端·python·docker·容器·langchain·ai agent 实战
工具人555526 分钟前
Docker 最新超详细版教程
运维·docker·容器
我送炭你添花42 分钟前
ASA原理与电子维修实战:前言 一路修来,一路学习
运维·网络·学习
skywalk81631 小时前
windows10 explorer占用太多内存问题解决
服务器·内存·windows10·explorer
张小姐的猫1 小时前
【Linux】网络编程 —— 多路转接:epoll
linux·运维·网络
宋明河1 小时前
五种 IO 模型与 select、poll、epoll 对比
linux
玄芯散人1 小时前
【金丹·81】性能分析:你的程序慢在哪
linux·性能优化·perf