Linux的通配符,权限,压缩解压

通配符

  • *:匹配任意单个或多个字符

    例:

  • 注:

    通配符可以用于rm,cp,ls等指令中

    • ?:匹配任意单个字符

    例:

权限说明

权限类型权限数字操作文件操作目录
r:读4cat,more,less,head,tail,greo等ls
w:写2>(覆盖写入),>>(追加写入),touch,rmmkdir,rm,rmdir,mv(重命名)
x:执行1./文件名(此时文件可执行程序)cd,dp,mv(移动)
-:无权限0无操作无操作

补:

  • 移动操作(mv)需要源目录和目标目录的执行权限(用于访问路径)

  • 同时需要源目录的写权限(删除原位置条目)和目标目录的写权限(创建新位置条目)

压缩,打包,解压缩

gzip

说明:Linux压缩文件为.gz格式,只能压缩文件,不能压缩目录;只能压缩,不能打包

 gzip [选项] 文件路径

选项:

-r:可以将目录下的文件递归压缩/解压缩(绕过文件目录找到文件进行压缩)

-l:显示已经压缩文件的压缩信息

-d:解压缩

注:

gzip -r 命令会递归压缩指定的目录下的每个文件(每个文件单独压缩成.gz),不会将整个目录打包成一个压缩文件

例:

 gzip 1.c
 #解释,压缩当前路径下的1.c文件,压缩后的名称默认为1.c.gz,压缩后源文件被删除
 ​
 gzip -d 1.c.gz
 #解释,解压后源文件会被删除
 ​
 gzip -r a
 #解释,递归压缩a目录中的文件,每个文件会单独压缩为.gz,压缩后删除源文件
 #例,源文件:a/1.c -> 压缩后:a/1.c.gz
 ​
 gzip -rd a
 #解释,解压缩.gz文件,解压后删除源文件
 ​
 gzip 1.c 2.c
 #解释,可以批量压缩
 ​
 gzip -d 1.c.gz 2.c.gz
 #解释,同样也可以批量解压

          

注:

如果已经是.gz文件就不能再次压缩

更高的压缩效率指令:bzip2

说明:压缩文件为.bz2格式,同样这种压缩不提供打包功能

 
bzip [选项] 文件路径

选项:

-k:保留源文件

-d:解压缩

-f:覆盖式压缩/解压缩(压缩或解压缩路径下,出现同名文件 ,用后出现的文件覆盖)

例:

 bzip2 1.c
 #解释,压缩当前路径下的1.c文件,源文件删除
 ​
 bzip2 -d 1.c.bz2
 #解释,解压缩1.c.bz2,源文件删除
 ​
 bzip2 -k 2.c
 #解释,压缩当前2.c,源文件保留
 ​
 bzip2 -kdf 2.c.bz2
 #解释,解压所当前路径下的2.c.bz2,解压缩后保留.bz2文件,覆盖掉之前的.c文件
 ​
 bzip2 -kf 1.c 2.c
 #解释,批量压缩,保留.c文件,覆盖同名的.bz2文件
 ​
 bzip2 -df 1.c.bz2 2.c.bz2
 #解释。批量解压缩,删除.bz2文件,覆盖已经存在的.c文件

总结

gzip和bzip2的区别:

  • gzip可以绕过目录,递归压缩文件;bzip2不能绕过目录压缩文件

  • 与gzip相比,bzip2有更高的压缩效率

  • 这两者不能混合使用,主要通过压缩文件扩展名区别

打包指令:tar

 tar [选项] 打包文件的名称 被打包的文件或目录路径 (有多个,用空格隔开)

选项:

-c:打包

-v:显示命令执行的过程

-f:用于指定打包文件的名称

-z:打包时压缩/解包时解压缩,操作的文件扩展名为.gz,使用gzip算法

-x:解包,-c和-x不能同时使用

-j:打包时压缩/解包时解压缩,操作的文件扩展名为.bz2,使用bzip2算法,-z和-j不能同时使用

注:

使用-f时选项必须将其放在最后,后接文件名

例:

 #打包,打包不会影响文件的大小,只会将多个文件整合在一起
 tar -cvf all.tar a 1.c
 #解释,打包a目录和1.c文件到all.tar,此时是未经过压缩,保留源文件
 ​
 tar -xvf all.tar
 #解释,解包all.tar中的a目录和1.c文件
 ​
 tar -zcvf all.tar.gz a  all.tar 1.c
 #解释,打包并压缩a,all.tar 1.c到all.tar.gz,经过压缩,保留源文件
 ​
 tar -zxvf all.tar.gz
 #解释,解包并解压缩all.tar.gz中a,all.tar,1.c
 ​
 打包+压缩(bzip)
 tar -jcvf all.tar.bz2 a all.tar 1.c
 ​
 tar -jxvf all.tar.bz2
 #解释,解包并解压缩all.tar.bz2

压缩文件或目录:zip

文件的后缀名是.zip,同时支持打包和压缩

注:

1.这个指令不是Linux自带的,如果需要用,需要额外安装,zip是跨平台的,各个平台都能用

2.当压缩一个目录的时候,必须使用-r否则只会压缩目录本身(空目录),不包括目录中的文件

安装命令:

 
sudo apt-get update
 #解释,更新软件
 ​
 sudo apt-get install zip(注意sudo apt-get install 文件名,将下载和安装整合在一起了)
 #解释,安装zip工具

注:

以上命令需要在联网的环境下进行

压缩算法:

 
zip [选项] 压缩后的文件名 文件/目录路径

解压算法:

 unzip [选项] 压缩文件的文件名

选项:

  • -r:递归压缩,用于对于目录的操作(体现在压缩算法上,并不是真的生成多个zip)

  • 注:不带选项会保留源文件(默认保留源文件)

    例:

     zip 1.zip 1.c
     #解释,压缩当前目录下的1.c文件,压缩后文件名为1.zip,压缩后保留源文件(*.c)
     unzip 1.zip
     #解释,解压当前路径下的1.zip文件,如果出现同种文件,会提示用户选择性处理
     ​
     zip a.zip a
     #解释,压缩当前路径下的目录a,压缩后文件为a.zip,压缩后,保留源文件,从外部整体压缩
     unzip a.zip
     #解释,解压当前路径下的a.zip文件,如果出现同种文件,会提示用户选择性处理
     ​
     zip -r a1.zip a
     #解释,压缩当前路径下a目录,为a1.zip,保留源文件,逐层递归压缩
     unzip a1.zip
     ​
     aip -r all.zip a/1.c a.zip 1.c
     #解释,将a/.c a.zip 1.c 打包压缩到all.zip
     unzip all.zip

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值