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中对文件进行查找、打包压缩以及解压的基本操作命令。

posted @ 2023-11-28 23:41  oushijiel  阅读(278)  评论(0)    收藏  举报