Linux命令详解 -- tar

tar - This  manual  page  documents  the  GNU version of tar, an archiving program designed to store and extract files from an archive file known as a tarfile.  A tarfile may be made on a tape drive, however, it is also common to write a tarfile to a normal file.  The first argument to tar must be  one  of the options Acdrtux, followed by any optional functions.  The final arguments to tar are the names of the files or directories which should be archived.  The use of a directory name always implies that the subdirectories below should be included in the archive.

作用:为linux的文件和目录创建档案,也可以在档案中改变文件,或者向档案中加入新的文件即用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的

语法:tar[必要参数][选择参数][文件]

参数:

 必要参数有如下:

  -A 新增压缩文件到已存在的压缩 catenate
  -B 设置区块大小        blocking-factor
  -c 建立新的压缩文件      create
  -d 记录文件的差别       difference
  -r 添加文件到已经压缩的文件  append 
  -u 添加改变了和现有的文件到已经存在的压缩文件 update
  -x 从压缩的文件中提取文件    extract get
  -t 显示压缩文件的内容     list
  -z 支持gzip解压文件      gzip
  -j 支持bzip2解压文件     bzip2
  -Z 支持compress解压文件
  -v 显示操作过程
  -l 文件系统边界设置
  -k 保留原有文件不覆盖
  -m 保留文件不被覆盖
  -W 确认压缩文件的正确性
 可选参数如下:
  -b 设置区块数目
  -C 切换到指定目录
  -f 指定压缩文件
  --help 显示帮助信息
  --version 显示版本信息

辨析:首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。 为什么要区分这两个概念     呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。

常见例子:常见解压/压缩命令

tar 
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)

.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName

.tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName

.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName

.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName

.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知

.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知

.Z
解压:uncompress FileName.Z
压缩:compress FileName

.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName

.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName

.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName

使用实例

实例1:将文件全部打包成tar包

命令:

tar -cvf log.tar log2012.log

tar -zcvf log.tar.gz log2012.log

tar -jcvf log.tar.bz2 log2012.log

输出:

[[email protected] test]# ls -al log2012.log

---xrw-r-- 1 root root 302108 11-13 06:03 log2012.log

[[email protected] test]# tar -cvf log.tar log2012.log

log2012.log

[[email protected] test]# tar -zcvf log.tar.gz log2012.log

log2012.log

[[email protected] test]# tar -jcvf log.tar.bz2 log2012.log

log2012.log

[[email protected] test]# ls -al *.tar*

-rw-r--r-- 1 root root 307200 11-29 17:54 log.tar

-rw-r--r-- 1 root root   1413 11-29 17:55 log.tar.bz2

-rw-r--r-- 1 root root   1413 11-29 17:54 log.tar.gz

说明:

tar -cvf log.tar log2012.log    仅打包,不压缩!

tar -zcvf log.tar.gz log2012.log   打包后,以 gzip 压缩

tar -jcvf log.tar.bz2 log2012.log  打包后,以 bzip2 压缩

在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar包; 如果加 j 参数,则以 .tar.bz2 来作为tar包名。

时间: 2024-10-27 19:13:32

Linux命令详解 -- tar的相关文章

Linux命令详解之–ls命令

今天开始为大家介绍下Linux中常用的命令,首先给大家介绍下Linux中使用频率最高的命令--ls命令. 更多Linux命令详情请看:Linux命令速查手册 linux ls命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录),还可以查看文件的权限(包括目录.文件夹.文件权限),查看目录信息等等,是一个非常强大有用的命令. 一.ls命令语法 ls [-alrtAFR] [name...] 二.ls命令参数 下面给大家介绍几个ls命令常用的参数. -a 显示所有文件及目录 (ls

linux命令详解

一.cat主要有三大功能: 1.一次显示整个文件.$ cat filename2.从键盘创建一个文件.$ cat > filename (只能创建新文件,不能编辑已有文件)3.将几个文件合并为一个文件: $cat file1 file2 > file 参数:-n 或 --number 由 1 开始对所有输出的行数编号-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行-v

Linux命令详解之—pwd命令

Linux的pwd命令也是一个非常常用的命令,本文为大家介绍下Linux中pwd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux pwd命令用于显示工作目录. 执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称. 一.Linux pwd命令语法 pwd [OPTION]... 参数说明: -L, --logical #use PWD from environment, even if it contains symlinks -P, --physical #a

Linux命令详解之—cat命令

cat命令的功能是连接文件或标准输入并打印,今天就为大家介绍下Linux中的cat命令. 更多Linux命令详情请看:Linux命令速查手册 Linux 的cat命令通常用来显示文件内容,也可以用来将几个文件连接起来显示,或者从标准输入读取内容并显示,常与重定向符号配合使用. 一.Linux cat命令语法格式 cat [OPTION]... [FILE].. 参数说明: -A, --show-all 等价于 -vET -b, --number-nonblank 对非空输出行编号 -e 等价于

Linux命令详解之—less命令

Linux下还有一个与more命令非常类似的命令--less命令,相比于more命令,less命令更加灵活强大一些,今天就给大家介绍下Linux下的less命令. 更多Linux命令详情请看:Linux命令速查手册 less命令 与 more命令 非常类似,但less命令 可以更加随意地浏览文件,而且 less 在查看之前不会加载整个文件. 相比较于more命令,很多人更喜欢使用 less命令. 一.Linux less命令语法 less [参数] 文件 less命令非常强大,在此只介绍几个常用

Linux命令详解之—tail命令

tail命令也是一个非常常用的文件查看类的命令,今天就为大家介绍下Linux tail命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux tail命令主要用来从指定点开始将文件写到标准输出.很多人喜欢使用tail –f 来监控日志文件. 一.Linux tail命令格式 Linux tail命令 格式如下所示 tail [OPTION]... [FILE]... Linux tail命令 参数如下所示 -f 循环读取 -q 不显示处理信息 -v 显示详细的处理信息 -c

Linux命令详解之–cd命令

cd命令是linux实际使用当中另一个非常重要的命令,本文就为大家介绍下Linux中cd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux cd命令用于切换当前工作目录至 dirName(目录参数). 其中 dirName 表示法可为绝对路径或相对路径.若目录名称省略,则变换至使用者的 home 目录 (也就是刚 login 时所在的目录). 另外,"~" 也表示为 home 目录 的意思,"." 则是表示目前所在的目录,"..&

Linux命令详解nice

[命令]nice — 调整程序运行的优先级 [格式]nice [OPTION] [command [arguments...]] [说明] 在当前程序运行优先级基础之上调整指定值得到新的程序运行优先级,用新的程序运行优先级运行命令行"command [arguments...]".优先级的范围为-20 - 19 等40个等级,其中数值越小优先级越高,数值越大优先级越低,既-20的优先级最高, 19的优先级最低.若调整后的程序运行优先级高于-20,则就以优先级-20来运行命令行:若调整后

Linux命令详解之—more命令

Linux more命令同cat命令一样,多用来查看文件内容,本文就为大家介绍下Linux more命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux的more命令类似 cat命令 ,不过more命令以一页一页的形式显示,更方便使用者逐页阅读. 按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,输入/+字符串可以搜索字符串(与vi搜索类似). 一.Linux more命令语法 more命令的语法格式如下: more [-dlfpcsu] [-