Linux 中的 tar 命令主要有四个作用,即:将多个文文件打包为一个文件、将文件打包并压缩、将打包的文件解包和将打包压缩的文件解压。
显示当前目录或指定路径下面的文件列表。
tar [options] file..
参数 | 描述 |
---|---|
options | tar 命令使用的参数。 |
file | 需要归档的文件或目录名。 |
参数 | 描述 |
---|---|
-A, --catenate | 追加 tar 文件至归档 |
-c, --create | 创建一个新归档 |
-r, --append | 追加文件至归档结尾 |
-u, --update | 仅追加比归档中副本更新的文件 |
-x, --extract, --get | 从归档中解出文件 |
-t, --list | 列出归档内容 |
-z, --gzip, --gunzip, --ungzip | 通过 gzip 压缩归档 |
-j, --bzip2 | 通过 bzip2 压缩归档 |
-J, --xz | 通过 xz 过滤归档 |
–lzip | 通过 lzip 过滤归档 |
–lzma | 通过 lzma 过滤归档 |
-Z, --compress, --uncompress | 通过 compress 压缩归档 |
-v, --verbose | 详细地列出处理的文件过程 |
-k, --keep-old-files | 保留源文件不覆盖 |
-m, --touch | 不要解压文件的修改时间 |
-W, --verify | 在写入以后尝试校验归档 |
f, --file=ARCHIVE | 使用归档文件或 ARCHIVE 设备,这个参数是最后一个,后面只接文件名 |
-b, --blocking-factor=BLOCKS | 设置每个记录 BLOCKS x 512 字节 |
-C, --directory=DIR | 改变至目录 DIR |
tar 命令是使用非常多的命令,其参数也非常丰富。
实例 | 描述 |
---|---|
tar -cvf file.tar file | 将 file 打包为 file.tar |
tar -czvf file.tar.gz file | 将 file 压缩为 file.tar.gz |
tar -tzvf file.tar.gz | 查看 file.tar.gz 里面的内容 |
tar -xzvf file.tar.gz | 解压缩 file.tar.gz |
tar -jcvf file.tar.bz2 file | 将 file 压缩为 file.tar.bz2 |
tar -jxvf file.tar.bz2 | 将 file file.tar.bz2 解压缩 |
tar -xzvf file.tar.gz -C dir | 解压缩 file.tar.gz 并指定解压到 dir 目录 |
tar -cvf file.tar file
我们首先,使用 touch 命令,批量创建几个文件,具体命令如下:
touch haicoder{1..5}.txt
运行后,我们并使用 ls 命令,查看创建的文件,终端输出如下:
现在,我们使用 tar 命令,将这些文件进行打包,具体命令如下:
tar -cvf haicoder.tar haicoder*.txt
运行后,终端输出如下:
我们可以看到,我们在使用 tar 命令打包时,输出了我们打包的文件,现在,我们使用 ls 命令,查看我们打包好的文件,具体命令如下:
ls haicoder.tar
运行后,终端输出如下:
我们看到,我们打包好的文件已经存在了,即,我们使用了 tar 命令打包了文件。
tar -czvf file.tar.gz file
我们首先,使用 touch 命令,批量创建几个文件,具体命令如下:
touch haicoder{1..5}.txt
运行后,我们并使用 ls 命令,查看创建的文件,终端输出如下:
现在,我们使用 tar 命令,将这些文件进行压缩为 tar.gz 格式,具体命令如下:
tar -czvf haicoder.tar.gz haicoder*.txt
运行后,终端输出如下:
我们可以看到,我们在使用 tar 命令压缩时,输出了我们压缩的文件,现在,我们使用 ls 命令,查看我们压缩好的文件,具体命令如下:
ls haicoder.tar.gz
运行后,终端输出如下:
我们看到,我们压缩好的文件已经存在了,即,我们使用了 tar 命令压缩了文件。
tar -tzvf file.tar.gz
我们首先,使用 touch 命令,批量创建几个文件,具体命令如下:
touch haicoder{1..5}.txt
运行后,我们并使用 ls 命令,查看创建的文件,终端输出如下:
现在,我们使用 tar 命令,将这些文件进行压缩为 tar.gz 格式,具体命令如下:
tar -czvf haicoder.tar.gz haicoder*.txt
运行后,终端输出如下:
我们可以看到,我们在使用 tar 命令压缩时,输出了我们压缩的文件,现在,我们使用 ls 命令,查看我们压缩好的文件,具体命令如下:
ls haicoder.tar.gz
运行后,终端输出如下:
我们看到,我们压缩好的文件已经存在了,即,我们使用了 tar 命令压缩了文件,现在,我们再次使用 tar 命令,查看压缩包的内容,具体命令如下:
tar -tzvf haicoder.tar.gz
运行后,终端输出如下:
我们可以看到,我们使用了 tar 命令,查看了压缩包里面的文件内容。
tar -xzvf file.tar.gz
我们使用 ls 命令,查看我们压缩好的文件,具体命令如下:
ls haicoder.tar.gz
运行后,终端输出如下:
我们看到,我们压缩好的文件已经存在了,现在,我们使用 tar 命令,解压 tar.gz 压缩文件,具体命令如下:
tar -xzvf haicoder.tar.gz
运行后,终端输出如下:
我们可以看到,我们使用了 tar 命令,解压了压缩包里面的文件,现在,我们使用 ls 命令,查看解压出来的文件内容,具体命令如下:
ls
运行后,终端输出如下:
我们看到,解压出来的文件列表,并且,原来的压缩包还存在。
tar -jcvf file.tar.bz2 file
我们首先,使用 touch 命令,批量创建几个文件,具体命令如下:
touch haicoder{1..5}.txt
运行后,我们并使用 ls 命令,查看创建的文件,终端输出如下:
现在,我们使用 tar 命令,将这些文件进行压缩为 tar.bz2 格式,具体命令如下:
tar -jcvf haicoder.tar.bz2 haicoder*.txt
运行后,终端输出如下:
我们可以看到,我们在使用 tar 命令压缩时,输出了我们压缩的文件,现在,我们使用 ls 命令,查看我们压缩好的文件,具体命令如下:
ls haicoder.tar.bz2
运行后,终端输出如下:
我们看到,我们压缩好的 tar.bz2 文件已经存在了,即,我们使用了 tar 命令压缩了文件。
tar -jxvf file.tar.bz2
我们使用 ls 命令,查看我们压缩好的文件,具体命令如下:
ls haicoder.tar.bz2
运行后,终端输出如下:
我们看到,我们压缩好的文件已经存在了,现在,我们使用 tar 命令,解压 tar.bz2 压缩文件,具体命令如下:
tar -jxvf haicoder.tar.bz2
运行后,我们使用 ls 命令,查看解压出来的文件内容,具体命令如下:
ls
运行后,终端输出如下:
我们看到,我们使用了 tar 命令,解压出了 tar.bz2 文件,并且,原来的压缩包还存在。
tar -xzvf file.tar.gz -C dir
我们使用 ls 命令,查看我们压缩好的文件,具体命令如下:
ls haicoder.tar.gz
运行后,终端输出如下:
我们看到,我们压缩好的文件已经存在了,现在,我们使用 tar 命令,解压 tar.gz 压缩文件到指定的路径,具体命令如下:
tar -xzvf haicoder.tar.gz -C /tmp
运行后,终端输出如下:
运行后,我们使用 ls 命令,到 /tmp 目录下查看解压出来的文件内容,具体命令如下:
ls /tmp/haicoder*
运行后,终端输出如下:
我们看到,我们使用了 tar 命令,解压出了 tar.gz 文件到了我们指定的路径。
Linux 中的 tar 命令主要有四个作用,即:将多个文文件打包为一个文件、将文件打包并压缩、将打包的文件解包和将打包压缩的文件解压。