Linux--文件查找、打包压缩以解压
文件查找
1.echo命令查看PATH变量的值:

2.which命令在环境变量PATH设置的目录中查找符合条件的命令条件:
参数:
- n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
- p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。
- w 指定输出时栏位的宽度。
- V 显示版本信息。

因为目录中没有qfedu,所以会显示未找到。
3.locate命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。
搜索范围:它不搜索全部数据信息,而是搜索数据库/var/lib/mloca1 te/mlocate.db。该数据库包含本地系统内所有文件名称及路径。系统会自动创建这个数据库,并且每天更新一次。
在使用locate命令查找齐件时,有时可以找到已经被删除的文件,但新创建的文件却无法查找到,原因是数据库文件没有被系统更新。为了避免上述情况,在使用 locate 命令之前可以先使用updatedb 命令手动更新数据库:

4.find命令根据文件名 查找:

参数:
- i 忽略大小写
- ls 查看文件的详细信息
5.在不确定文件名称时可以用通配符”*“ :

6.find 命令还可以根据文件大小查 找,例如,在/etc目录下分别查找大于、等于、小于 5MiB 的文件,具体如下所示。

7.find 命令在不指定目录的层级时 会逐层地对文件系统进行搜索,查找 效率低下。通过“-maxdepth”可以指定查找的目录深度:

8.find 命令还可以根据时间查找(atime、mtime、ctime )。例如,查找修改时间距当前时间大于等于、小于5天的文件,此处的5天是从修改的那一刻计算,共5x24小时,并非日期:

9.find命令根据文件属主、属组查找:

10.find命令根据文件类型查找:

11.find命令根据文件权限查找:

12.find命令查找包含SUID、SGID权限的文件:

find与locate命令的区别:
find命令搜索速度较慢,它不会索引目录,而是对整个目录进行遍历,这会占用很多系统资源,locate 只在 /var/lib/slocate 资料库中找。
文件打包压缩
文件过大会占用很多硬盘存储空间,在网络传输俞的过程中也会消耗很长时间。对文件进行打包压缩后,相同容量能够存储更多数据,在网络传输时因数据量的降低而速度更快。
1.创建目录dir01,在目录下创建20个文件:

2.使用gzip命令对dir01进行压缩,gzip只能对单一的文件进行压缩:

3.tar命令可以将多个目录与文件打包在一起,使用tar命令对/etc进行打包压缩:

参数:
- c 表示创建一个打包文件
- z 表示通过调用gzip对文件进行压缩
- j 表示通过调用bzip2对文件进行压缩
- J 表示通过调用xz对文件进行压缩
- f 表示后面为被处理的文件目的名称
文件解压
1.file命令查看文件的压缩信息:

2.不解压的情况,tar命令查看文件的压缩信息:

参数:
- t 查看打包文件的文件名
- x 表示解打包或者解压缩
- C 表示解压至指定目录
- v 可以显示解压过程
综合案例
MySQ L 物理备份及恢复。
1.首先安装 mariadl b-server,然后启动该服务,创建备份目录:

因为之前下过mysql了,所以被之前的取代了。
2.接着将/var/lib/mysql中的文件打包压缩至/backup目录下,删除/var/lib/mysql目录下的文件:

最后将mysql.tar.xz解压至目录下:

3.主机 A 把海量的几 KB的小文件(这里以/etc 目录为例)复制到主机A的/tmp目录下。用打包压缩的方式是可以的,但会消耗较多时间和系统资源,引起 I/O 操作。存储是速度最慢的一个环节,可以让打包和压缩过程只发生在内存中。使用 tar 命令打包压缩并在文件名前添加“-”符号,中间以管道符连接,再次用tar命令解包解压

4.主机A把海量的 勺几KB的小文件(这里以/etc 目录为 例)复制到主机B的/tmp目录下。常规的方法是使用 scp命令复制,效率较低。

以上就是Linux中对文件进行查找、打包压缩以及解压的基本操作命令。
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号