Linux 压缩文件的命令行总结
Linux压缩文件的读取
· *.Z compress 程序压缩的档案;
· *.bz2 bzip2 程序压缩的档案;
· *.gz gzip 程序压缩的档案;
· *.tar tar 程序打包的数据,并没有压缩过;
· *.tar.gz tar 程序打包的档案,其中并且经过 gzip 的压缩!
· *.zip zip 程序压缩文件
· *.rar rar 程序压缩文件
Compress压缩文件
[root@test /root]# cp /etc/man.config /root
[root@test /root]# compress man.config //压缩man.config这个文件
[root@test /root]# compress -d man.config.Z //-d 解压缩这个文件
[root@test /root]# uncompress man.config.Z //解压缩这个文件
当你以 compress 压缩之后,如果没有下达其它的参数,那么原本的档案就会被后来的 *.Z 所取代!
Gzip压缩文件和zcat
[root@test /root]# gzip [-d#] filename <==压缩与解压缩
[root@test /root]# zcat filename.gz <==读取压缩档内容
参数说明:
-d :解压缩的参数!
-r :递归处理,将指定目录下的所有文件及子目录一并处理
-# :压缩等级, 1 最不好, 9 最好, 6 是默认值!
[root@test /root]# gzip man.config //会产生 man.config.gz 这个档案
[root@test /root]# zcat man.config.gz //会读取出 man.config 的内容
[root@test /root]# gzip -d man.config.gz
[root@test /root]# gunzip man.config.gz
解压缩,产生 man.config 这个档案
[root@test /root]# gzip -9 man.config //以最大压缩比压缩 testing 这个档案!
[root@test /root]# gzip -r filename.gz file1 file2 file3 /usr/work/school
//file1、file2、 file3、以及 /usr/work/school 目录的内容(假设这个目录存在)压缩起来,然后放入 filename.bz2 文件中
Bzip2压缩文件和bzcat
[root@test /root]# bzip2 [-dz] filename <==压缩解压缩指令
[root@test /root]# bzcat filename.bz2 <==读取压缩文件内容指令
参数说明:
-d :解压缩的意思!
-z :压缩的意思!
范例:
同样的,我们以刚刚拷贝过来的 /root/man.config 这个档案为例
[root@test /root]# bzip2 –z man.config
[root@test /root]# bzcat man.config.bz2
[root@test /root]# bzip2 –d man.config.bz2
[root@test /root]# bunzip2 man.config.bz2
[root@test /root]# bzip2 filename.bz2 file1 file2 file3 /usr/work/school
//file1、file2、 file3、以及 /usr/work/school 目录的内容(假设这个目录存在)压缩起来,然后放入 filename.bz2 文件中
Tar压缩文件
[root@test /root]# tar [-zxcvfpP] filename
[root@test /root]# tar -N 'yyyy/mm/dd' /path -zcvf target.tar.gz source
参数说明:
-z :是否同时具有 gzip 的属性?
-x :解开一个压缩档案的参数指令!
-t :查看 tarfile 里面的档案!
-c :建立一个压缩档案的参数指令
-v :压缩的过程中显示档案!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
『 tar -zcvPf tfile sfile』才对喔!
-p :使用原档案的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的档案中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!
范例:
[root@test /root]# tar -cvf directory.tar directory
//只将目录整合打包成一个档案
[root@test /root]# tar -zcvf directory.tar.gz directory
除了将目录打包外,同时以 gzip 压缩
[root@test /root]# tar -zcvf filename.tar.gz /home/test/*
将 /home/test/ 这个目录下的档案全部打包并压缩成为一个 filename.tar.gz 的档案
[root@test /root]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
[root@test /root]# tar -xvf directory.tar
解 tar 的封包,请注意,由于没有 gzip (.tar 而非 .tar.gz) 的作用,所以只要使用 –xvf 即可!不需要加上 z ,否则会显示有问题!
[root@test /root]# tar -zxvf directory.tar.gz
这个就是有加上 gzip 的压缩的结果!所以需要加上 –z 呦!
[root@test /root]# tar –ztvf directory.tar.gz
这个 t 可以用来查看 tar 里面的档案信息呢!而不需要将他解开!
[root@test /root]# tar -zcvPf home.tar.gz /home
则建立起来的压缩档内档案为绝对路径
请注意,使用这个 P 的参数时,不要将 P 加在 f 后面,因为
f 之后要立即接档名才行喔!
[root@test /root]# tar -N '2002/06/25' -zcvf home.tar.gz /home
上面是说 在 /home 这个目录中,比 2002/06/25 日还要新的档案才会被打包进入 home.tar.gz这个档案中!
[root@test /root]# tar -zcvf host.tar.gz / --exclude /mnt --exclude /proc
上面是说,将根目录的所有数据都打包进 host.tar.gz 这个档案中,但是 /mnt 及 /proc 则不打包!
[root@test /root]# tar -cvf - /home | tar -xvf -
上面的意思是『将 /home 打包之后,直接解压缩在 /root 底下!』嘿嘿!不需要再建立一次中间档案!不过,使用上面的语法最好使用『绝对路径』,比较不会有问题!这个方式适合不想要建立中间档案时!
Zip和unzip压缩文件
[root@test /root]# zip -r myfile.zip ./* //将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件.
[root@test /root]# zip -d myfile.zip smart.txt //删除压缩文件中smart.txt文件
[root@test /root]# zip -m myfile.zip ./rpm_info.txt //向压缩文件中myfile.zip中添加rpm_info.txt文件
[root@test /root]# unzip -o -d /home/sunny myfile.zip //把myfile.zip文件解压到/home/sunny/
Rar压缩文件
# tar -xzpvf rarlinux-3.2.0.tar.gz
# cd rar
# make
这样就安装好了,安装后就有了rar和unrar这两个程序,rar是压缩程序,unrar是解压程序。它们的参数选项很多,举例说明一下其用法
# rar a all *.jpg
这条命令是将所有.jpg的文件压缩成一个rar包,名为all.rar,该程序会将.rar 扩展名将自动附加到包名后。
# unrar e all.rar
这条命令是将all.rar中的所有文件解压出来。
现在网上多数压缩包是rar格式的,所以需要一个rar工具。
首先在http://www.rarlab.com/download.htm下载RAR 3.60 beta 6 for Linux
我解压到/opt下,会自动建立rar目录。这个工具无需编译可以直接使用。
在$HOME目录下建立bin目录。
在bin目录中建立一个链接。ln -s /opt/rar/rar rar。
就可以用rar工具压缩和解压.rar文件了。不过此工具是命令方式的,和在DOS下的RAR操作是一样的。
Linux 压缩文件的命令行总结的更多相关文章
- linux 压缩文件的命令总结
Linux压缩文件的读取 *.Z compress 程序压缩的档案: *.bz2 bzip2 程序压缩的档案: *.gz gzip 程序压缩的档案: *.tar ...
- kali linux 压缩文件解压缩命令(包含7z)
tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— .gz 解压1 ...
- 【Linux】【二】linux 压缩文件(txt)、查看压缩文件内容、解压缩文件、
通过Xshell 压缩文件.解压缩文件 gzip tools.txt 压缩[tools.txt]文件 zcat tools.txt.gz 查看压缩文件[tools.txt.gz]内容 gunzip ...
- linux命令行快速统计文件(压缩文件)的行数
统计(文件|压缩文件)的行数 zcat file.gz | sed -n '$=' #迅速.直接打印出多少行.-n 取消 ...
- Linux查找并删除重复文件的命令行fdupes工具,dupeGuru图形工具
查了几十个网页,找到这个接近满意的解决方案http://unix.stackexchange.com/questions/146197/fdupes-delete-files-aft... 不过正则里 ...
- 【No.2】监控Linux性能25个命令行工具
接着上一篇博文继续 [No.1]监控Linux性能25个命令行工具 10:mpstat -- 显示每个CPU的占用情况 该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一 ...
- 【No.1】监控Linux性能25个命令行工具
如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?通过以下命令或者工具可以快速定位 top vmstat lsof tcpdump netsta ...
- linux的基本的命令行操作
linux的基本的命令行操作 第一步前登陆你的服务器 //创建文件夹的方法 mkdir 文件名 //进入指定文件夹 cd 文件名 //查看文件夹下的内容 ls or ll // 查看当前的路径 pwd ...
- Linux —— 压缩文件
Linux——压缩文件 为什么需要压缩文件? 文件在传输过程中,可能由于文件过大,传输所需时间过多.减少文件大小有两个明显的好处,一是可以减 少存储空间,二是通过网络传输文件时,可以减少传 ...
随机推荐
- AGC 020 B - Ice Rink Game
题面在这里! 倒着维护可以取的范围区间,判一下可不可能无解即可. #include<bits/stdc++.h> #define ll long long using namespace ...
- 【字符串哈希】【哈希表】Aizu - 1370 - Hidden Anagrams
给你两个4k长度的串,问你最长公共子串.两个子串相同被定义为所有字母的出现次数分别相同即可. 就枚举第一个串的所有子串,将字母出现的次数看作一个大数,进行哈希(双关键字),塞到哈希表里面.然后枚举第二 ...
- 消除重复 Exercise07_15
import java.util.Scanner; /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:消除重复 */ public class Exercise07_15 { ...
- PHP手册笔记
<?php getenv — 获取一个环境变量的值 $ip = getenv ( 'REMOTE_ADDR' ); // 或简单仅使用全局变量($_SERVER 或 $_ENV) $ip = $ ...
- <摘录>MBR和分区表
MBR 意思是主引导记录.位于硬盘的0柱面.0磁头.1扇区. MBR 大小为1个扇区,512字节. 下面是MBR的结构: 偏移 构 ...
- js中getBoundingClientRect()的用法介绍
平时经常获取一个div的位置,用了定位,取位置还好,在不用定位的情况下,计算一个div在页面的距离,就可以用到getBoundingClientRect()方法. getBoundingClientR ...
- 高并发场景系列(一) 利用redis实现分布式事务锁,解决高并发环境下减库存
原文:http://blog.csdn.net/heyewu4107/article/details/71009712 高并发场景系列(一) 利用redis实现分布式事务锁,解决高并发环境下减库存 问 ...
- 安卓安装ZXING(二维码)SDK
安卓安装ZXING(二维码)SDK 安装<WIFI共享精灵>后,ZXING(二维码)SDK就有了,扫二维码又快而且精度又高. 真是意外的发现.不需要去下载BARCODE SCANNER.
- nodejs+mysql入门实例
此前我已准备好mysql,使用的是PHP的组合包Appserv 手动添加数据库依赖: 在package.json的dependencies中新增, “mysql” : “latest”, { &quo ...
- JavaScript -- 清除缓存
在客户端有一个HTML文件,用来提交输入信息,问题在于:每次按刷新时,发觉并不是整个页面重新被装载,好似是缓存中. 因为文本框中仍出现上次输入的值,只有在地址栏中按回车整个页面才重新装载,应当怎样避免 ...