首页 > 系统相关 >Linux:文件查找、打包压缩及解压

Linux:文件查找、打包压缩及解压

时间:2023-11-28 21:55:45浏览次数:43  
标签:解压 文件 tar 5M etc 查找 Linux find

文件查找
简介
which
Linux which命令用于查找文件。

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

语法:

which 文件
参数:

n<文件名长度>  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
p<文件名长度>  与-n参数相同,但此处的<文件名长度>包括了文件的路径。
w  指定输出时栏位的宽度。
V  显示版本信息。
语法:

find
Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

 

find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression。

 

locate
Linux locate命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。

 

语法:locate 文件
          会找到含有文件名相关的所有文件

locate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。
locate 的速度比 find 快,它并不是真的查找,而是查数据库,一般文件数据库在 /var/lib/slocate/slocate.db 中,所以 locate 的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为:updatedb

命令文件查找
使用which

 

alias:别名,使用命令cp其实就是输入cp -i。使用ls时会对一些文件显示颜色,就是因为它又一个color的关键字。别名系统

alias使用方法:

 

 

使用locate:

 

使用find
按文件名字
引号是转义符,防止一些符号有特殊含义
# find /etc -name "ifcfg-eth0"
# find /etc -iname "ifcfg-eth0" //-i 忽略大小写
# find /etc -iname "ifcfg-eth*"

Linux中严格区分大小写,查找文件时使用iname选项就不会区分大小写来查找文件

不知道完全文件名可使用*来进匹配


按文件大小
寻找大于5M的文件,属组的右边就是文件的大小单位是字节
# find /etc -size +5M //大于 5M
# find /etc -size 5M
# find /etc -size -5M
# find /etc -size +5M -ls //-ls 找到的处理动作

寻找等于5M的文件,会有误差,但是是在5M左右

寻找小于5M的文件,小于5M的文件过多就显示前七行


指定查找的目录深度,/根是第一级目录,/etc是第二级目录,以此类推
maxdepth,直到第四级目录才找到文件
# find / -maxdepth 3 -a -name "ifcfg-eth0"

4. 按文件属组、属主找
uesr 和 group

# find /home -user jack //属主是 jack 的文件
# find /home -group hr //属组是 hr 组的文件
# find /home -user jack -group hr
# find /home -user jack -a -group hr
# find /home -user jack -o -group hr

按文件类型
# find /dev -type f //f 普通
# find /dev -type d //d 目录
# find /dev -type l //l 链接
# find /dev -type b //b 块设备
# find /dev -type c //c 字符设备
# find /dev -type s //s 套接字
# find /dev -type p //p 管道文件

 

按文件权限
-ls就是添加的动作,根据需找到文件后的处理动作

找到文件后默认是看,带有一个-print动作
# find /etc -name "ifcfg*"
# find /etc -name "ifcfg*" -print
# find /etc -name "ifcfg*" -ls
# find /etc -name "ifcfg*" -exec cp -rvf {} /tmp \;
# find /etc -name "ifcfg*" -ok cp -rvf {} /tmp \;

找到后删除

找到后复制,-ok是一个中转符号在他后面携带一些特殊参数,cp命令需要:cp 源文件 目标文件)=,所以{}就是代表源文件。;就是结束符

 

文件压缩打包
Linux tar(英文全拼:tape archive )命令用于备份文件。

tar 是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。

tar命令是Uinx/Linux系统中备份文件的可靠方法,几乎可以工作于任何工作环境中,它的使用权限是所有用户,建议针对目录。

打包
语法:

tar -cf 打包后的文件名 源文件
-c创建文件 -f文件名 ,文件后最好带上后缀
# tar -cf test.tar //打包 a.c文件为test.tar

 


压缩
语法

tar -cfz 压缩后的文件名 源文件
-z是一种压缩工具 gzip,压缩文件最好带上后缀

 

# tar -czf etc1.tar.gz/etc //-z 调用 gzip
# tar -cjf etc2.tar.bz2 /etc //-j 调用 bzip2
# tar -cJf etc3.tar.xz/etc //-J 调用 xz
# ll -h etc*
-rw-r--r--. 1 root root 8.7M 3 月 12 00:08 etc1.tar.gz
-rw-r--r--. 1 root root 7.5M 3 月 12 00:08 etc2.tar.bz2
-rw-r--r--. 1 root root 4.8M 3 月 12 00:09 etc3.tar.xz

解压
语法:

tar -xf 压缩包
# tar -xf test.tar.gz a.c //解压test.tar.gz文件
解压到当前目录下

 


# tar -tf sys.tar.xz
# tar -xzvf etc1.tar.gz
# tar -xvf etc1.tar.gz //无需指定解压工具,tar 会自动判断
# tar -xvf etc2.tar.bz2 -C /tmp //-C 重定向到//tmp 目录

 

标签:解压,文件,tar,5M,etc,查找,Linux,find
From: https://www.cnblogs.com/Huan07/p/17863178.html

相关文章

  • Linux:RPM包管理
    一 、RPM包管理1、软件包管理介绍1.1、软件包分类源码包(就是直接的代码)a.脚本安装包(多了个安装界面,但是方便)二进制包(就是源码经过编译后的文件)(别名RPM包或系统默认包)1.2、源码包优点•开源,可以直接修改源代码•自由选择所需功能•编译安装,更加稳定效率也搞•卸载方便(直接......
  • Linux的总结
    作为一个学习Linux的人,我有一些深刻的心得和体会。首先,学习Linux让我对计算机操作系统有了更深入的理解。通过学习Linux,我了解到操作系统是计算机系统中的核心组件,负责管理计算机的硬件资源、提供用户界面、运行应用程序等。深入学习Linux让我对操作系统的原理和内部工作有......
  • linux vim的使用
    学习使用Vim编辑器是我在Linux系统中的一次很好的体验。Vim是一个功能强大的文本编辑器,虽然一开始可能会觉得它有些陌生,但是一旦掌握了一些基本的操作技巧,就会发现它的强大和高效。首先,我学会了如何在Vim中进行文本编辑和导航。Vim的编辑模式和命令模式让我可以快速地在文......
  • Linux sed文本编辑器
    sed文本编辑器简单使用查找sed-n'/patter/p'proxy.sh#pattern是要找的内容替换sed's/pattern/replacement/'file#这个命令会在文件中查找第一个匹配的pattern,并将其替换为replacement。sed's/pattern/replacement/g'file#在这个命令中,g表示全局替换,会将每一......
  • 第1章 初识Linux
    1.Linux介绍历史:Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。UNIX最初免费发布,在1990年,UNIX在服务器市场尤其是大学校园成为主流操作系统,许多校园都有UNIX主机,当然还包括一些研究它的......
  • P5318 【深基18.例3】查找文献
    P5318【深基18.例3】查找文献基本思路邻接表实现,结果得为了边有序再专门开一个vector预处理完再存边。而且一开始忘记vis[1]=true了!#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>#include<queue>#include<vector>constintN=1e6......
  • 文件查找、打包压缩及解压
    1. 文件查找:    find命令:用于在指定目录及其子目录下查找文件。例如:find /path/to/directory -name filename该命令会在指定目录及其子目录下查找文件名为filename的文件。   grep命令:用于在文件中查找指定内容。例如:grep “pattern” filename该命令会在fil......
  • Linux环境变量等配置
    打印环境变量打印所有的变量envenv|grepUSER打印变量echo$USERPATH在Linux系统中,环境变量PATH用于指定可执行程序的搜索路径。当你在命令行中输入一个命令时,系统会在PATH中列出的目录中查找这个命令对应的可执行文件。如果命令对应的可执行文件存在于PATH中......
  • Linux用户管理心得
    Linux系统是多用户、多任务的分时操作系统,系统上每一个进程都有一个特定的文件,每个文件都被一个特定的用户所拥有。创建用户/组首先使用useradd命令创建用户qf01,不指定任何选项,然后使用grep命令过滤出该用户信息删除用户/组如果一个用户需要被删除,可以使用userdel命令,但若想同......
  • Linux 07
    第七章存储管理本章学习目标:1.了解存储的方式2.掌握创建基本分区的方法一、存储方式1.1从连接方式上,存储分为以下3种类型:本地存储:直接插在服务器上的硬盘,系统文件存放在本地。外部存储:可以理解为平时使用的移动硬盘,不过移动硬盘用的是USB接口连接,一般外部存储可以......