Chinaunix首页 | 论坛 | 博客
  • 博客访问: 294332
  • 博文数量: 69
  • 博客积分: 3370
  • 博客等级: 中校
  • 技术积分: 1035
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-25 10:52
文章分类

全部博文(69)

文章存档

2019年(1)

2009年(7)

2008年(61)

我的朋友

分类: BSD

2008-12-31 18:57:44

因为 非常的有用,而且在备份以外还有很多其他的功用,所以我们在里对它进行一些注释。更详细的介绍当然是参看手册 (man tar)。
    tar 是一个归档程序,就是说 tar 可以把许多文件联合包装成一个大的文件或者把它们写入一个备份设备,例如一个磁带驱动器。当您生成了这么一个大文件后,您会想要对它进行压缩,-z 选项是专门作这个的。因此,tar 提供了一个非常好的在互联网上发布程序或软件的。您会发现 界里,这个方法被广泛的采用。
这是一个 tar 命令行的例子:
tar -zcvf myfiles.tar.gz /usr/local/bin
让我们分析一下这行命令的具体意思:
tar
命令名。
-
告诉 tar 接下来的是选项。
z
告诉 tar 自动使用 gzip 压缩,如果您用了这个选项,最好后缀使 .gz。
c
告诉 tar 建立一个新的文件。
v
给出较多的讯息 (verbose),就是让 tar 在时告诉您它在干什么。
f
这个选项是说:命令行的下一项是要建立的那个文件的名字或者要使用的设备的名字。如果在这里使用 /dev/st0,它就会把备份写到磁带驱动设备 /dev/st0 上。
myfiles.tar.gz
这是将要建立的文件的文件名。
/usr/local/bin
这是我们想要进行归档的那些文件或者目录的名字,这里可以放一个以上的名字,以空格分隔。
您会经常在网上看到 tar.gz(或者缩短成 .tgz)这样的文件,您可以使用一下命令把它解包装:
tar -zxvf filename.tar.gz

补充说明:tar是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。

参  数:
  -A或--catenate            新增温暖件到已存在的备份文件。
  -b<区块数目>或--blocking-factor=<区块数目>   设置每笔记录的区块数目,每个区块大小为12Bytes。
  -B或--read-full-records   读取数据时重设区块大小。
  -c或--create              建立新的备份文件。
  -C<目的目录>或--directory=<目的目录>   切换到指定的目录。
  -d或--diff或--compare     对比备份文件内和文件系统上的文件的差异。
  -f<备份文件>或--file=<备份文件>   指定备份文件。
  -F或--info-scrīpt=   每次更换磁带时,就执行指定的scrīpt文件。
  -g或--listed-incremental处理GNU格式的大量备份。
  -G或--incremental       处理旧的GNU格式的大量备份。
  -h或--dereference       不建立符号连接,直接复制该连接所指向的原始文件。
  -i或--ignore-zeros      忽略备份文件中的0 Byte区块,也就是EOF。
  -k或--keep-old-files    解开备份文件时,不覆盖已有的文件。
  -K<文件>或--starting-file=<文件>   从指定的文件开始还原。
  -l或--one-file-system   复制的文件或目录存放的文件系统,必须与tar指令执行时所处的文件系统相同,否则不予复制。
  -L<媒体容量>或-tape-length=<媒体容量> 设置存放每体的容量,单位以1024 Bytes计算。
  -m或--modification-time 还原文件时,不变更文件的更改时间。
  -M或--multi-volume      在建立,还原备份文件或列出其中的内容时,采用多卷册模式。
  -N<日期格式>或--newer=<日期时间>   只将较指定日期更新的文件保存到备份文件里。
  -o或--old-archive或--portability 将资料写入备份文件时使用V7格式。
  -O或--stdout            把从备份文件里还原的文件输出到标准输出设备。
  -p或--same-permissions  用原来的文件权限还原文件。
  -P或--absolute-names    文件名使用绝对名称,不移除文件名称前的"/"号。
  -r或--append            新增文件到已存在的备份文件的结尾部分。
  -R或--block-number      列出每个信息在备份文件中的区块编号。
  -s或--same-order        还原文件的顺序和备份文件内的存放顺序相同。
  -S或--sparse            倘若一个文件内含大量的连续0字节,则将此文件存成稀疏文件。
  -t或--list              列出备份文件的内容。
  -T<范本文件>或--files-from=<范本文件>   指定范本文件,其内含有一个或多个范本样式,让tar解开或建立符合设置条件的文件。
  -u或--update            仅置换较备份文件内的文件更新的文件。
  -U或--unlink-first      解开压缩文件还原文件之前,先解除文件的连接。
  -v或--verbose           显示指令执行过程。
  -V<卷册名称>或--label=<卷册名称>   建立使用指定的卷册名称的备份文件。
  -w或--interactive       遭遇问题时先询问用户。
  -W或--verify            写入备份文件后,确认文件正确无误。
  -x或--extract或--get    从备份文件中还原文件。
  -X<范本文件>或--exclude-from=<范本文件>  指定范本文件,其内含有一个或多个范本样式,让ar排除符合设置条件的文件。
  -z或--gzip或--ungzip   通过gzip指令处理备份文件。
  -Z或--compress或--uncompress   通过compress指令处理备份文件。
  -<设备编号><存储密度>     设置备份用的外围设备编号及存放数据的密度。
  --after-date=<日期时间> 此参数的效果和指定"-N"参数相同。
  --atime-preserve       不变更文件的存取时间。
  --backup=<备份方式>或--backup   移除文件前先进行备份。
  --checkpoint           读取备份文件时列出目录名称。
  --concatenate          此参数的效果和指定"-A"参数相同。
  --confirmation         此参数的效果和指定"-w"参数相同。
  --delete               从备份文件中删除指定的文件。
  --exclude=<范本样式>     排除符合范本样式的问家。
  --group=<群组名称>       把加入设备文件中的文件的所属群组设成指定的群组。
  --help                 在线帮助。
  --ignore-failed-read   忽略数据读取错误,不中断程序的执行。
  --new-volume-scrīpt=   此参数的效果和指定"-F"参数相同。
  --newer-mtime          只保存更改过的文件。
  --no-recursion         不做递归处理,也就是指定目录下的所有文件及子目录不予处理。
  --null                   从null设备读取文件名称。
  --numeric-owner          以用户识别码及群组识别码取代用户名称和群组名称。
  --owner=<用户名称>        把加入备份文件中的文件的拥有者设成指定的用户。
  --posix                 将数据写入备份文件时使用POSIX格式。
  --preserve              此参数的效果和指定"-ps"参数相同。
  --preserve-order        此参数的效果和指定"-A"参数相同。
  --preserve-permissions  此参数的效果和指定"-p"参数相同。
  --record-size=<区块数目> 此参数的效果和指定"-b"参数相同。
  --recursive-unlink     解开压缩文件还原目录之前,先解除整个目录下所有文件的连接。
  --remove-files         文件加入备份文件后,就将其删除。
  --rsh-command=<执行指令>   设置要在远端主机上执行的指令,以取代rsh指令。
  --same-owner           尝试以相同的文件拥有者还原问家你。
  --suffix=<备份字尾字符串> 移除文件前先行备份。
  --totals                备份文件建立后,列出文件大小。
  --use-compress-program=<执行指令>   通过指定的指令处理备份文件。
  --version               显示版本信息。
  --volno-file=<编号文件>   使用指定文件内的编号取代预设的卷册编号。

阅读(2325) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~