文件压缩解压命令tar:
1. tar命令行选项
选项 命令描述
-c 建立压缩档案
-x 解压
–delete 从压缩包中删除已有文件,如果该文件在包中出现多次,该操作其将全部删除。
-t 查看压缩包中的文件列表
-r 向压缩归档文件末尾追加文件
-u 更新原压缩包中的文件
-z 压缩为gzip格式,或以gzip格式解压
-j 压缩为bzip2格式,或以bzip2格式解压
-v 显示压缩或解压的过程,该选项一般不适于后台操作
-f 使用档案名字,这个参数是最后一个参数,后面只能接档案名。
2. tar使用实例:
#将当前目录下所有文件压缩打包,需要说明的是很多人都习惯将tar工具压缩的文件的扩展名命名为.tar
/> tar -cvf test.tar * -rw-r–r–. 1 root root 183 Nov 11 08:02 users -rw-r–r–. 1 root root 279 Nov 11 08:45 users2
/> cp ../*.log . #从上一层目录新copy一个.log文件到当前目录。 /> tar -rvf test.tar *.log #将扩展名为.log的文件追加到test.tar包里。 /> tar -tvf test.tar -rw-r–r– root/root 183 2011-11-11 08:02 users -rw-r–r– root/root 279 2011-11-11 08:45 users2 -rw-r–r– root/root 48217 2011-11-11 22:16 install.log
/> touch install.log #使原有的文件更新一下最新修改时间 /> tar -uvf test.tar *.log #重新将更新后的log文件更新到test.tar中 /> tar -tvf test.tar #从输出结果可以看出tar包中多出一个更新后install.log文件。 -rw-r–r– root/root 183 2011-11-11 08:02 users -rw-r–r– root/root 279 2011-11-11 08:45 users2 -rw-r–r– root/root 48217 2011-11-11 22:16 install.log -rw-r–r– root/root 48217 2011-11-11 22:20 install.log /> tar –delete install.log -f test.tar #基于上面的结果,从压缩包中删除install.log -rw-r–r– root/root 183 2011-11-11 08:02 users -rw-r–r– root/root 279 2011-11-11 08:45 users2 /> rm -f users users2 #从当前目录将tar中的两个文件删除 /> tar -xvf test.tar #解压 /> ls -l users* #仅列出users和users2的详细列表信息 -rw-r–r–. 1 root root 183 Nov 11 08:02 users -rw-r–r–. 1 root root 279 Nov 11 08:45 users2
#以gzip的格式压缩并打包,解压时也应该以同样的格式解压,需要说明的是以该格式压缩的包习惯在扩展名后加.gz
/> tar -cvzf test.tar.gz * /> tar -tzvf test.tar.gz #查看压缩包中文件列表时也要加z选项(gzip格式) -rw-r–r– root/root 48217 2011-11-11 22:50 install.log -rw-r–r– root/root 183 2011-11-11 08:02 users -rw-r–r– root/root 279 2011-11-11 08:45 users2 /> rm -f users users2 install.log /> tar -xzvf test.tar.gz #以gzip的格式解压 /> ls -l *.log users* -rw-r–r– root/root 48217 2011-11-11 22:50 install.log -rw-r–r– root/root 183 2011-11-11 08:02 users -rw-r–r– root/root 279 2011-11-11 08:45 users2 /> rm -f test.* #删除当前目录下原有的压缩包文件
#以bzip2的格式压缩并打包,解压时也应该以同样的格式解压,需要说明的是以该格式压缩的包习惯在扩展名后加.bz2
/> tar -cvjf test.tar.bz2 * /> tar -tjvf test.tar.bz2 #查看压缩包中文件列表时也要加j选项(bzip2格式) -rw-r–r– root/root 48217 2011-11-11 22:50 install.log -rw-r–r– root/root 183 2011-11-11 08:02 users -rw-r–r– root/root 279 2011-11-11 08:45 users2 /> rm -f *.log user* /> tar -xjvf test.tar.bz2 #以bzip2的格式解压 /> ls -l -rw-r–r–. 1 root root 48217 Nov 11 22:50 install.log -rw-r–r–. 1 root root 10530 Nov 11 23:08 test.tar.bz2 -rw-r–r–. 1 root root 183 Nov 11 08:02 users -rw-r–r–. 1 root root 279 Nov 11 08:45 users2
大文件拆分命令split:
下面的列表中给出了该命令最为常用的几个命令行选项:
选项 描述
-l 指定行数,每多少分隔成一个文件,缺省值为1000行。
-b 指定字节数,支持的单位为:k和m
-C 与-b参数类似,但切割时尽量维持每行的完整性
-d 生成文件的后缀为数字,如果不指定该选项,缺省为字母
/> ls -l -rw-r–r–. 1 root root 10530 Nov 11 23:08 test.tar.bz2 /> split -b 5k test.tar.bz2 #以每文件5k的大小切割test.tar.bz2 /> ls -l #查看切割后的结果,缺省情况下拆分后的文件名为以下形式。 -rw-r–r–. 1 root root 10530 Nov 11 23:08 test.tar.bz2 -rw-r–r–. 1 root root 5120 Nov 11 23:34 xaa -rw-r–r–. 1 root root 5120 Nov 11 23:34 xab -rw-r–r–. 1 root root 290 Nov 11 23:34 xac /> rm -f x* #删除拆分后的小文件 /> split -d -b 5k test.tar.bz2 #-d选项以后缀为数字的形式命名拆分后的小文件 /> ls -l -rw-r–r–. 1 root root 10530 Nov 11 23:08 test.tar.bz2 -rw-r–r–. 1 root root 5120 Nov 11 23:36 x00 -rw-r–r–. 1 root root 5120 Nov 11 23:36 x01 -rw-r–r–. 1 root root 290 Nov 11 23:36 x02 /> wc install.log -l #计算该文件的行数 /> split -l 300 install.log #每300行拆分成一个小文件 /> ls -l x* -rw-r–r–. 1 root root 11184 Nov 11 23:42 xaa -rw-r–r–. 1 root root 10805 Nov 11 23:42 xab -rw-r–r–. 1 root root 12340 Nov 11 23:42 xac -rw-r–r–. 1 root root 11783 Nov 11 23:42 xad -rw-r–r–. 1 root root 2105 Nov 11 23:42 xae
本文转自:http://www.cnblogs.com/stephen-liu74/archive/2011/11/28/2254750.html
未经允许不得转载:SRE空间 » 文件压缩解压命令tar和大文件拆分命令split
评论前必须登录!
注册