Linux13--归档管理


归档管理

计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。

压缩文件

tar 命令表示压缩文件

语法格式:

​ tar [参数] 打包文件名 文件

选项说明:

-c 建立新的压缩文件
-z 通过 gzip 压缩文件
-v 显示操作过程
-f 指定压缩文件

tar -czvf  day01.tar.gz day01.py
tar -czvf  ../ggg/day01.tar.gz day01.py
tar -czvf day03.tar.gz t1.sql t2.sql t3.sql

解压文件

tar 命令表示解压文件

语法格式:

​ tar 选项 压缩文件名称

选项说明:

-x 从压缩的文件中提取文件

-z 通过 gzip 压缩文件

-v 显示操作过程

-f 指定压缩文件

tar -xzvf  t02.tar.gz
tar -xzvf ../test1/day03.tar.gz

文件压缩解压

gzip

tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz

gzip使用格式如下:

​ gzip [选项] 被压缩文件

常用选项:

选项 含义
-d 解压
-r 压缩所有子目录

tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项(-z)可以调用gzip实现了一个压缩的功能,实行一个先打包后压缩的过程。

压缩用法:tar cvzf 压缩包包名 文件1 文件2 ...

-z :指定压缩包的格式为:file.tar.gz

解压用法: tar zxvf 压缩包包名

-z :指定压缩包的格式为:file.tar.gz

解压到指定目录:-C (大写字母“C”)

文件压缩解压bzip2

tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样)。
tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz2
在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程
压缩用法:tar -jcvf 压缩包包名 文件...(tar jcvf bk.tar.bz2 *.c)
解压用法:tar -jxvf 压缩包包名 (tar jxvf bk.tar.bz2)

文件压缩解压:zip、unzip

通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
解压文件:unzip -d 解压后目录文件 压缩文件

查看文件

which指令会在环境变量$PATH设置的目录里查找符合条件的文件

语法格式:

​ which [文件...]

参数:

-n<文件名长度>  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

-p<文件名长度>  与-n参数相同,但此处的<文件名长度>包括了文件的路径。

-w 指定输出时栏位的宽度。

-V 显示版本信息。

which bash
查看bash的绝对路径

通过什么命令查找执行命令?

which 只能查可执行文件
whereis 只能查二进制文件、说明文档,源文件等

查找命令的可执行文件是去哪查找的? 怎么对其进行设置及添加?

whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
补充说明:whereis 指令会在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,二进制文件,或是帮助文件。
-b 只查找二进制文件。
-B<目录> 只在设置的目录下查找二进制文件。-f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M<目录> 只在设置的目录下查找说明文件。-s 只查找原始代码文件。
-S<目录> 只在设置的目录下查找原始代码文件。-u 查找不包含指定类型的文件。
which 指令会在 PATH 变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
-n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p 与-n 参数相同,但此处的包括了文件的路径。-w 指定输出时栏位的宽度。
-V 显示版本信息

查看各类环境变量用什么命令?

查看所有 env
查看某个,如 home:env $HOME

删除文件

rm 命令表示删除文件

语法格式:

rm 选项 文件名称

选项说明:

-f 忽略不存在的文件,不会出现警告信息

-r 递归删除

rm -f test.doc
练习:在testing目录下,进行如下操作:
(1)创建2个目录,分别是: test1、test2
cd testing
mkdir test1 test2
ls
(2)在test1目录中,新建文件,t1.sql、t2.sql、t3.sql
cd test1
touch t1.sql t2.sql t3.sql
ls
(3)在test1目录中,将文件t1.sql、t2.sql、t3.sql压缩
  变成一个压缩包,名称为linux_day03.tar.gz
tar -czvf linux_day03.tar.gz t1.sql t2.sql t3.sql
(4)将linux_day03.tar.gz压缩包,解压到test2目录中
cd ../test2
tar -xzvf ../test1/linux_day03.tar.gz 
(5)删除test2目录中,t3.sql文件
rm -f t3.sql
ls


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM