命令格式:
tar[必要参数][选择参数][文件]
参数说明
$ tar -h
第一个选项必须是模式说明符:
-c Create -r Add/Replace -t List -u Update -x Extract
Common Options:
-b # Use # 512-byte records per I/O block
-f Location of archive
-v Verbose
-w Interactive
Create: tar -c [options] [ | | @ | -C ]
, add these items to archive
-z, -j, -J, --lzma Compress archive with gzip/bzip2/xz/lzma
--format {ustar|pax|cpio|shar} Select archive format
--exclude Skip files that match pattern
-C Change to before processing remaining files
@ Add entries from to output
List: tar -t [options] []
If specified, list only entries that match
Extract: tar -x [options] []
If specified, extract only entries that match
-k Keep (don't overwrite) existing files
-m Don't restore modification times
-O Write entries to stdout, don't restore to disk
-p Restore permissions (including ACLs, owner, file flags)
实例操作
# 新建一个临时目录
$ mkdir tmp && cd tmp
# 新建3个文件
$ touch file{1,2,3}.txt
$ ls
file1.txt file2.txt file3.txt
# 1、打包(并非压缩)
$ tar -cvf file.tar *.txt
a file1.txt
a file2.txt
a file3.txt
$ ls
file.tar file1.txt file2.txt file3.txt
# 2、查看包内文件
$ tar -tvf file.tar
-rw-r--r-- 0 QMP admin 0 5 16 20:21 file1.txt
-rw-r--r-- 0 QMP admin 0 5 16 20:21 file2.txt
-rw-r--r-- 0 QMP admin 0 5 16 20:21 file3.txt
# 3、向现有打包文件中添加新文件
$ touch file4.txt
$ tar -rvf file.tar file4.txt
a file4.txt
$ tar -tvf file.tar
-rw-r--r-- 0 QMP admin 0 5 16 20:21 file1.txt
-rw-r--r-- 0 QMP admin 0 5 16 20:21 file2.txt
-rw-r--r-- 0 QMP admin 0 5 16 20:21 file3.txt
-rw-r--r-- 0 QMP admin 0 5 16 20:22 file4.txt
# 4、当前目录下解压文件
$ tar -xvf file.tar
x file1.txt
x file2.txt
x file3.txt
x file4.txt
$ ls
file.tar file1.txt file2.txt file3.txt file4.txt
# 指定解压目录,需要先新建目录,如果没有则会报错:目录不存在
$ mkdir file
$ tar -xvf file.tar -C file
x file1.txt
x file2.txt
x file3.txt
x file4.txt
$ ls
file file1.txt file3.txt
file.tar file2.txt file4.txt
# 进入目录查看解压后的文件
$ cd file
$ ls
file1.txt file2.txt file3.txt file4.txt
参考 linux中tar命令的用法