2023年7月26日发(作者:)
Linux系统bash脚本编程(三)——find命令详解1find命令概念:
实时查找⼯具,通过遍历制定起始路径下⽂件系统层级结构完成⽂件查找实时查找:动态查找,根据数据的整体变动不时变化特点: 1:查找速度略慢;2:精确查找;3:实时查找
⽤法:
基本语法:find [OPTIONS] :find选项[查找起始路径] :1>制定具体搜索⽬标其实路径;2>默认为当前⽬录[查找条件] :1>根据⽂件名进⾏查找:-name “pattern”-iname “pattern” 不区分⽂件名中的⼤⼩写(pattern⽀持glob风格的通配符“
, ?, [], [ ^ ] ”,但不⽀持正则的写法) 例如:~]# find/etc/ -name "pass2> -regex pattern:基于正则表达式模式查找⽂件,匹配是整个路径,⽽⾮其名;3>根据⽂件从属关系进⾏查找:-user USERNAME:查找属主指定⽤户的所有⽂件; ~]# find /user ⽤户名 -ls
-group GRPNAME:查找属组指定组的所有⽂件;
~]# find /group 组名 -ls
-uid UID:查找属主指定的UID的所有⽂件; -gid GID:查找属组指定的GID的所有⽂件; -nouser:查找没有属主的⽂件; -nogroup:查找没有属组的⽂件;4>根据⽂件的类型查找:例如:find /dev -type b -ls- ⽂件类型:s:套接字⽂件(IP地址与端⼝的组合)f: 普通⽂件d: ⽬录⽂件l:符号链接⽂件b:块设备 ⽂件c:字符设备⽂件p:管道⽂件
5>根据权限查找:-perm [/|-]modemode:精确权限匹配;/mode:任何⼀类⽤户(u,g,o)的权限中的任何⼀位(r,w,x)符合条件即满⾜;9位权限之间存在“或”关系;-mode:每⼀类⽤户(u,g,o)的权限中的每⼀位(r,w,x)同时符合条件即满⾜;9位权限之间存在“与”关系;
[处理动作]-print:输出⾄标准输出;默认的动作;-ls:类似于对查找到的⽂件执⾏“ls -l”命令,输出⽂件的详细信息;-delete:删除查找到的⽂件;-fls /PATH/TO/SOMEFILE:把查找到的所有⽂件的长格式信息保存⾄指定⽂件中;-ok COMMAND {} ; :对查找到的每个⽂件执⾏由COMMAND表⽰的命令;每次操作都由⽤户进⾏确认;-exec COMMAND {} ; :对查找到的每个⽂件执⾏由COMMAND表⽰的命令;每次操作不需要⽤户进⾏确认;注意:find传递查找到的⽂件路径⾄后⾯的命令时,是先查找出所有符合条件的⽂件路径,并⼀次性传递给后⾯的命令;但是有些命令不能接受过长的参数,此时命令执⾏会失败;另⼀种⽅式可规避此问题:
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1690360949a337768.html
评论列表(0条)