Linux 解压缩

zip命令参数:

-1 : 最快压缩,压缩率最差。
-9 : 最大压缩,压缩率最佳。
-b : 暂存文件的路径。这个参数一般在要产生的 zip 文件存在,而硬盘现有空间不足时。
-c : 替新增或更新的文件增加一行注解。
-d : 从 zip 文件移出一个文件。
-D : 不要在 zip 文件中储存文件的目录信息。
-f : 以新文件取代现有文件。
-F : 修复已经损毁的压缩文件。
-g : 将文件压缩附加到 zip 文件中。
-h : 显示辅助说明。
-i : 指定要含入的某些特定文件。
-j : 只储存文件的名称,不含目录。
-k : 强迫使用 MSDOS 格式文件名。
-l : 将 CR ( Carriage Return ) LF ( Line Feed ) 转换成 LF,一般是要将 MS-DOS 上的文本文件压缩后拿到 UNIX 下使用时才使用此参数。这只适用于文本文件 ( .txt ),如果用于二进制文件则会造成二进制文件损毁。
-L : 显示 zip 命令的版权。
-m : 将特定文件移入 zip 文件中,并且删除特定文件。
-n : 不压缩特定扩展名的文件。
-o : 将 zip 文件的时间设成最后修正 zip 文件的时间。
-q : 安静模式,不会显示相关讯息和提示。
-r : 包括子目录。
-t : 只处理 mmddyy 日期以后的文件。
-T : 测试 zip 文件是否正常。
-u : 只更新改变过的文件和新文件。
-v : 显示版本资讯或详细讯息。
-x : 不需要压缩的文件。
-y : 将 symbolic link 压缩,而不是压缩所连结到的文件。
-z : 为 zip 文件增加注解。
-# : 设定压缩速度,-0 表示不压缩,-1 表示最快速度的压缩,
-9 :表示最慢速度的压缩 ( 最佳化的压缩 ),预设值为 -6。
-@ : 从标准输入读取文件名称。

使用-x参数排除不需要压缩的文件

例如:有文件1-4 文件夹5下面有一个文件6

[root@ home]# ll 123/
总用量 4
-rw-r--r-- 1 root root    0 9月  26 11:28 1
-rw-r--r-- 1 root root    0 9月  26 11:28 2
-rw-r--r-- 1 root root    0 9月  26 11:28 3
-rw-r--r-- 1 root root    0 9月  26 11:28 4
drwxr-xr-x 2 root root 4096 9月  26 14:04 5

递归压缩123文件夹,并排除文件1和文件夹5

[root@ home]# zip -rx={123/5/*,123/1} 123.zip 123/
  adding: 123/ (stored 0%)
  adding: 123/2 (stored 0%)
  adding: 123/4 (stored 0%)
  adding: 123/3 (stored 0%)

或者

压缩时排除一个文件夹下所有内容
zip -r 123.zip 123/ -x "123/5/*"

压缩时排除指定多个文件夹下所有内容
zip -r123.zip 123/ -x "123/5/*" -x "123/4/*"

 

解压一个zip文件(命令):unzip filename.zip (路径:解压文件在当前文件下)

unzip filename.zip -d newdir(路径:解压文件可以将文件解压缩至一个你指定的的目录,使用-d参数,filename.zip压缩文件名称,newdir压缩路径)

tar命令参数

-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!
因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
   例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
   『 tar -zcvPf tfile sfile』才对喔!
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!

压缩命令:

1.tar -zcvf 文件名.tar.gz 文件名
2.递归压缩文件123 压缩时排除文件1和文件夹5下面的数据
tar -zcvf 123.tar.gz --exclude={123/5,123/1} 123/

或者

tar.gz压缩:进入www.888.com文件夹内,排除某些文件夹打包压缩其余文件
cd /home/www.888.com/
tar -zcvf 888.tar.gz ./* --exclude=./*d/2017
注意:文件夹结尾不能加“/”,否则还是会把2017目录以及其下的文件打包进去。

压缩时排除多个文件夹
tar -zcvf 888.tar.gz ./* --exclude=./*d/2017 --exclude=./*d/2018  --exclude=./*d/2019

 

解压命令:tar -zxvf 文件名.tar.gz 文件名

 

posted @ 2022-09-26 14:48  聆听说书人  阅读(83)  评论(0编辑  收藏  举报