美文网首页
shell文件归档

shell文件归档

作者: 何阿驼 | 来源:发表于2018-08-11 22:59 被阅读0次

学习的内容来自于Linux Shell脚本攻略(2)

内容只做了简单的记录,方便自己学习

shell 命令查询地址:http://man.linuxde.net/

用Tar归档

tar命令可以对文件进行归档。他最初时设计用来将数据存储再磁带上。

tar可以将多个文件和文件夹保存为单个文件,同时还能保留所有的文本属性,如所有者,权限等。由tar创建的文件通常称为Tarball

支持的一些参数

A 合并归档文件

c 或者--create 建立新的备份文件

d 记录文件的差别

r 添加文件到已经归档的文件

u 根据时间戳判断是否添加文件

x 或者--extract或--get 从备份文件中提取文件到当前目录

C(目录) 与x搭配,在解压缩的时候指定解压缩的地址

f 或者--file 指定备份文件

v 或者--verbose 冗长模式,显示指令执行过程

t 或者--list 列出备份文件内容

--delete 删除文件

1)用tar对文件进行归档

tar -cf output.tar file1 file2 file3..

2)使用选项-t理出归档文件中包含的文件

tar -tf output.tar

3)在归档或者列出归档的时候获得更多信息。使用-v或者-vv

tar -tvf output.tar

4)解压缩文件

tar -xf output.tar

指定压缩文件中的一些文件进行解压缩(部分提取)

tar -xf output.tar file1 file2

5)合并归档文件

tar -Af file1.tar file2.tar

6)归档文件重名的问题

1533189359883.png

我们在归档的过程中放进了两个相同的文件,接下来我又使用了-rf追加进入了一个新的文件

1533189503793.png

同样是与原文件同名,这个时候我们会发现我们无法区别哪一个是新的文件哪一个是旧的文件

使用-u更新选项可以指明,只有比归档文件中的同名文件更新时才会被添加

1533189646589.png

使用-v 或者-vv查看时间戳,现在我们再往里面追加一个printf_sh.sh文件

首先我们先改变这个文件的时间戳,使用touch或者vim编辑文件

修改之前


1533190286425.png

修改之后

1533190256331.png

再把这个文件追加进去

1533190349135.png 1533190357590.png

虽然没有覆盖上面之前的文件,但是再提取文件的时候,他会自动选择最近时间戳的文件


1533190466110.png

比较归档文件与文件系统中的内容

-d diff

tar -df otput.tar

1533190562312.png

时间不一样,大小不一样。为什么会有两个不同


1533190597366.png

因为这个归档文件中一共有三个printf_sh.sh

其中有一个是我现在的文件,其他两个文件是我修改以前的文件,因此会出现两个

从归档文件中和删除文件

tar -f output.tar --delete file1 file2

或者

tar --delete --file output.tar file1

注意:tar并不是压缩文件,而是归档文件

不同的tar选项可以用来指定不同的压缩格式

-j 指定bunzip2格式

-z 指定gzip格式

--lzma指定lzma格式

tar可以通过查看输出或输入文件的扩展名来进行压缩 -a


1533191326081.png

从归档文件中排除部分文件

tar -cf output.tar * --exclude "*.txt"

样式要使用双引号来使用

使用文件列表排除

创建一个文件list

tar -cf outpu.tar * -X list

排除版本控制目录

tar --exclude-vsc -czvvf output.tar file

打印总字节数

-totals

使用gzip压缩数据

1)使用gzip压缩文件

1533191916342.png

2)解压文件

gunzip filename.gz

3)列出压缩文件的属性信息

gzip -l filename.gz

4)从stdin中读入文件,也可以将压缩文件写出stdout

5)指定级别 --fast --best

其他的压缩

跟tar 和gzip很相似还有bzip2 和zip 以及lzma pbzip

相关文章

  • shell文件归档

    学习的内容来自于Linux Shell脚本攻略(2) 内容只做了简单的记录,方便自己学习 shell 命令查询地址...

  • linux压缩解压

    文件的归档 归档命令: tar [option] 归档文件名 被归档的文件c ##建立一个压缩文...

  • linux 压缩&解压缩 tar.gz

    1、多个文件归档打包 2、归档打包并压缩一步完成 3、将(归档)文件压缩 4、将归档文件拆包 5、将归档压缩文件直...

  • Linux常用命令(二)

    文件归档、打包压缩命令:rar 缺省仅仅打包归档,不进行文件压缩 常用选项参数: "-c"创建归档文件包 "-x"...

  • Linux之tar命令 文件存档

    用法 功能 将多个文件或目录归档在一起形成一个归档文件,也能将一个归档文件复原。 常用选项 -c 创建一个归档文...

  • Shell 脚本攻略-归档和压缩

    tar -cvf c 表示创建归档文件,v 表示显示压缩信息,f 表示指定归档文件名称 -xvf x 表示提取归档...

  • Android studio 与 aar jar

    jar是java字节码文件(class文件)的归档文件 aar是Android中特有的归档文件,与jar最大区别是...

  • Linux基本操作(一)

    1.tar命令功能:-A 将一个tar归档文件追加到另一个已有tar归档文件-c 创建一个新的tar归档文件-...

  • Linux学习笔记(二)---Linux打包(归档)和压缩详解

    归档和压缩所各自代表的含义。归档,也称为打包,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没...

  • iOS-归档NSCoding序列化

    归档 归档->数据持久化的方式->加密(把文件加密《不是把数据加密》 归档分为: 1、存储数据(编码、序列化、归档...

网友评论

      本文标题:shell文件归档

      本文链接:https://www.haomeiwen.com/subject/lvwrbftx.html