当前位置: 首页 > news >正文

CentOS 7基础操作08_Linux查找目录和文件

1、which命令——查找用户所执行的命令文件存放的目录

        which命令用于查找Linux命令程序并显示所在的具体位置.其搜索范围主要由用户的环境变量PATH决定(可以执行言echo sPATH”命令查看),这个范围也是Linux操作系统在执行命令或程序时的默认搜索路径。

        which命令使用要查找的命令或程序名作为参数.默认当找到第一个目标后即不再继续查找.若希望在所有搜索路径中查找.可以添加“-a”选项。例如,执行“which ls”命令后,可以找到名为Is的、位于/usr/bin/ls的命令程序文件,具体操作如下:

[root@blab ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@blab ~]# which ls
alias ls='ls --color=auto'/usr/bin/ls

        需要注意的是,由于Shell内置的命令并没有对应的程序文件,因此使用which查找内部命令时.将找不到对应的程序。例如,查找内部命令history的位置时,会提示在搜索路径中没有这个程序文件.具体操作如下。

[root@blab ~]# which history 
/usr/bin/which: no history in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

2、find命令——查找文件或目录

        find 命令是 Linux操作系统中功能非常强大的查找命令,可以根据目标的名称类型、大小等不同属性进行精细查找,fird命令在查找时采用递归的方式,其使用形式相当灵活,也可以相当复杂.这里只介绍最常用的几种用法。find命令的基本使用格式如下:

find    [查找范围]    [查找条件表达]

        其中,查找范围对应的是在其中查找文件或子目录的目录位置(可以有多个),而查找条件则决定了 find命令根据哪些属性、特征进行查找。较常用的几种查找条件类型如下所述。

  • 按名称查找:关键字为“-name”,根据目标文件的名称进行查找.允许使用“*”及“?”通配符。
  • 按文件大小查找:关键字为“-size”,根据目标文件的大小进行查找.一般使用“+”和“-“号设置超过或小于指定的大小作为查找条件.常用的容量单位包括kB(注意k是小写).MB、GB.
  • 按文件属主查找:关键字为“-user”,根据文件是否属于目标用户进行查找、
  • 按文件类型查找:关键字为“-type”,根据文件的类型进行查找,这里的类型指的是普通文件(f).目录(d),块设备文件(b)、字符设备文件 (c)等。块设备指的是成块读取数据的设备〈如硬盘、内存等).而字符设备指的是按单个字符读取数据的设备(如键盘、鼠标等)

        设置find命令的查找条件时,若需要使用"*"或“?”通配符,最好将文件名用双引号括起来以避免当前目录下符合条件的文件干扰查找结果。例如,以下操作将在/etc目录中递归查找名称以"resol”开头、以~.conf”结尾的文件。

[root@blab ~]# find /etc/ -name "resol*.conf"
/etc/resolv.conf

        使用"-type"查找条件可以过滤出指定类型的文件。例如,以下操作将在/boot目录中查找出所有的文件夹(对应的类型为d).而忽略其他类型的文件。

[root@blab ~]# find /boot/ -type d
/boot/
/boot/efi
/boot/efi/EFI
/boot/efi/EFI/centos
/boot/efi/EFI/centos/fw
/boot/efi/EFI/BOOT
/boot/grub2
/boot/grub2/i386-pc
/boot/grub2/locale
/boot/grub2/fonts
/boot/grub

        需要同时使用多个查找条件时,各表达式之间可以使用逻辑运算符“-a”与“-o”分别表示而且(and)或老(c)例如以下两个操作使田了两个杏坊冬件即‘招1024kB ”和“名称以vmlinuz开头”,但分别使用“-8“-0°组合两个条件,前者表示两个条件必须同时满足.后者表示只需满足其中任何一个条件即可。

[root@blab ~]# find /boot/ -size +1024k -a -name "vmlinuz*"
/boot/vmlinuz-3.10.0-957.el7.x86_64
/boot/vmlinuz-0-rescue-1971b91db4664a60b0e21d5a701b32bc
[root@blab ~]# 
[root@blab ~]# find /boot/ -size +1024k -o -name "vmlinuz*"
/boot/efi/EFI/centos/MokManager.efi
/boot/efi/EFI/centos/mmx64.efi
/boot/efi/EFI/centos/shim.efi
/boot/efi/EFI/centos/shimx64-centos.efi
/boot/efi/EFI/centos/shimx64.efi
/boot/efi/EFI/BOOT/BOOTX64.EFI
/boot/grub2/fonts/unicode.pf2
/boot/System.map-3.10.0-957.el7.x86_64
/boot/vmlinuz-3.10.0-957.el7.x86_64
/boot/initramfs-0-rescue-1971b91db4664a60b0e21d5a701b32bc.img
/boot/vmlinuz-0-rescue-1971b91db4664a60b0e21d5a701b32bc
/boot/initramfs-3.10.0-957.el7.x86_64.img
[root@blab ~]# 
http://www.lryc.cn/news/368378.html

相关文章:

  • CI/CD实战面试宝典:从构建到高可用性的全面解析
  • NLP实战入门——文本分类任务(TextRNN,TextCNN,TextRNN_Att,TextRCNN,FastText,DPCNN,BERT,ERNIE)
  • MySQL: 表的增删改查(基础)
  • WDF驱动开发-PNP和电源管理(三)
  • Redis集群和高可用性:保障Redis服务的稳定性
  • C# WPF入门学习主线篇(二十一)—— 静态资源和动态资源
  • 出现 Navicat 和 Cmd 下SQL 版本 | 查询不一致的解决方法
  • 31、matlab卷积运算:卷积运算、二维卷积、N维卷积
  • C++青少年简明教程:文件
  • Kimichat使用案例010:快速识别出图片中的表格保存到Excel
  • [大师C语言(第二十四篇)]C语言指针探秘
  • Docker命令总结
  • 把chatgpt当实习生,进行matlab gui程序编程
  • LabVIEW 与组态软件在自动化系统中的应用比较与选择
  • html--万年历
  • 2013年 阿拉斯加巴罗活动层厚度和土壤含水量
  • 超详解——python数字和运算——小白篇
  • LabVIEW图像采集处理项目中相机选择与应用
  • Java——IO流(一)-(2/9):File类的常用方法(判断文件类型、获取文件信息、创建删除文件、遍历文件夹)
  • 电子设计入门教程硬件篇之集成电路IC(二)
  • Unity3D测量面积和角度实现方法(二)
  • vite 配置 typescript 环境
  • ThreadCache线程缓存
  • UE5_加载本地图片(jpg, png) 转 UTexture
  • Linux操作系统:Spark在虚拟环境下的安装及部署
  • 内网安全--隧道技术代理技术
  • 彩虹易支付最新版源码
  • python生成excel数据并实现隔行变色
  • IEEE754 十进制数转32位浮点数格式
  • JVM内存分析之JVM分区与介绍