学而实习之 不亦乐乎

在 Linux 中使用 tar 命令归档文件

2024-06-13 06:16:07

一、基本用法

语法:tar [OPTION...] [FILE]...

主要选项(参数):

  • -c, --create: 创建档案文件(archive)。
  • -x, --extract, --get:从档案文件中提取文件。
  • -t, --list:列出(list)档案文件中的内容。
  • -r, --append:向档案文件末尾追加文件
  • -u, --update:更新档案文件中的文件,只更新较新的文件。

注意:以上几个主要选项是互斥的,比如压缩和解压缩,只可能用到一个。

辅助选项:

  • -z, --gzip: 将归档后的档案文件使用gzip压缩。
  • -j, --bzip2: 将归档后的档案文件使用bzip2压缩。
  • -v, --verbose: 列出归档过程中所有处理的文件,即显示处理过程。
  • -f: 归档后的档案文件的名称。

注意:使用-f参数时,-f参数后面必须紧跟着档案名称,中间不能有其他参数。

其他参数:

  • -C, --directory=DIR: 切换到指定目录下。

二、实例

1、文件归档

将A目录归档,归档后的档案文件名称是A.tar( 即:目录A -> A.tar )。

# tar -cvf A.tar A/

将A.tar.gz提取到当前目录下。

# tar -xvf A.tar.gz

将A.tar解压缩到指定目录下(/path/to/extract/)。

# tar -xvf A.tar -C /path/to/extract/

这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

# tar -rf all.tar *.gif 

这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

# tar -uf all.tar logo.gif 

这条命令是列出all.tar包中所有文件,-t是列出文件的意思

# tar -tf all.tar 

2、压缩与解压缩

将A目录归档并用gzip格式进行压缩,归档后的档案文件名称是A.tar.gz( 即:目录A -> A.tar.gz )。

# tar -czvf A.tar.gz A/

将A.tar.gz解压缩到当前目录下。

# tar -xzvf A.tar.gz

将A目录归档并用bzip2格式压缩,归档后的档案文件名称是A.tar.bz2( 即:目录A -> A.tar.bz2 )。

# tar -cjvf A.tar.bz2 A/

将A.tar.bz2解压缩到当前目录下。

# tar -xjvf A.tar.bz2

注意:还有一些压缩参数,需要额外安装一些命令才能使用。