tar命令
在Linux中tar命令算是用得最多的命令了,基基本语法如下所示:
tar [选项] [文件]
其常用参数如下所示:
选项
-A
,--catenate
向压缩包中添加压缩包-c
,--create
新建压缩包-C
,--directory=DIR
指定解压缩目录-d
,--diff
对比压缩包与文件系统的差异--delete
从压缩包删除指定的文件-r
,--append
添加文件末尾追加文件-t
,--list
显示压缩包中的目录结构-u
,--update
仅向压缩包中添加较新的文件-x
,--extract
解压压缩包-f
,--file=ARCHIVE
指定压缩文件-v
,--verbose
显示详细过程-j
,--bzip2
支持bzip2-z
,--gzip
支持gzip--overwrite
解压时如果文件已经存在,则进行替换
使用tar需要注意的事项如下所示:
1、常用的主选项参数如下:
-c -x -t -r -u
以上这5个参数同时只能出现一个,不能同时出现多个
2、辅助选项
-f :一般情况需要将该参数放置在最后位置,后面紧跟文件名
tar 示例如下所示:
添加压缩文件到当前目录
[root@localhost ~]# tar -cf Alltxt.tar *.txt
查看压缩包内容
[root@localhost ~]# tar -tf Alltxt.tar
in.txt
out.txt
packstack-answers-20180710-091950.txt
packstack-answers-20180710-092155.txt
packstack-answers-20180710-100538.txt
向压缩包中添加压缩包
[root@localhost ~]# tar -cf Alltxt.tar *.txt
[root@localhost ~]# tar -cf Allbak.tar *.bak
[root@localhost ~]# tar -Af Alltxt.tar Allbak.tar
[root@localhost ~]# tar -tf Alltxt.tar
in.txt
out.txt
packstack-answers-20180710-091950.txt
packstack-answers-20180710-092155.txt
packstack-answers-20180710-100538.txt
append.txt.bak
向压缩包中添加文件
[root@localhost ~]# tar -rf Alltxt.tar out
[root@localhost ~]# tar -tf Alltxt.tar
in.txt
out.txt
packstack-answers-20180710-091950.txt
packstack-answers-20180710-092155.txt
packstack-answers-20180710-100538.txt
append.txt.bak
out/
out/out.txt
out/eip.sh
更新压缩包中的文件
[root@localhost ~]# tar -uf Alltxt.tar append.txt.bak
解压文件到指定目录
[root@localhost ~]# tar -xf testfile.tar -C TarTest/
解压压缩包中的指定文件
[root@localhost testfile]# tar -xf testfile.tar testfile/pyconfig.h
[root@localhost testfile]# tree testfile
testfile
└── pyconfig.h
0 directories, 1 file