大佬教程收集整理的这篇文章主要介绍了Linux系统学习---文件查找和文件内容搜索(二),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在特定的目录内查找文件,速度比find快,但是没有查找到全部文件 格式 whereis [ -bmsu] 文件或目录
-l 列出whereis会查询的几个主要目录 -b 只找二进制格式的文件 -m 只找说明文件manual路径下 文件 -s 只找source 源文件 -u 查找不在上述三个项目中的其他文件
根据PATH环境变量的路径去找执行文件的名 格式 which [ -a ] 命令名 -a 将PATH目录中所有找到的结果都列出来,默认是只列出找到的第一个的
在centos下 可以查看别名,但在ubuntu下不行
locate 不会去直接搜索磁盘,而是在系统数据库中查找文件,所以比较快速 数据库文件位置:/var/lib/mlocate/内 数据库默认是每天执行一次(不同版本不一样),如果新获取的文件后面收录进去,搜索不到 手动更新locate的数据库:updatedb
格式 :locate [ 选项 ] 文件名
-i 忽略大小写的差异 -c 不输出文件名,只计算文件的数量 -l 仅输出几行,若输出五行 则 -l 5 -s 输出locate所使用的数据库文件相关信息,包括记录的文件和目录数量 -r 后面接正则表达式的显示方式
查找文件,在磁盘中查找,比较万能,但是速度较慢 格式 : find [ PATH ] [ option ] [ation] find 路径 选项 参数 默认连同子目录一起搜索的,比较耗磁盘资源
不写路径时,默认在当前路径下找
1、与时间有关的选项:
共有-atime、-ctime、mtime,以-mtime说明
-mtime n : n为数字,意义为 n天之前的一天之内 修改过的文件
-mtime +n : 列出在n天之前(不包含第n天 ) 修改过的文件
-mtime -n : 列出在n天之内(含第n天)修改过的文件
-newer [ 一个存在的文件名] :列出比这个文件还要新的文件
举例 : 查找/etc 下面的文件,一天内修改过的文件
find /etc -mtime 0 #第0天之前,一天内,,,也就是今天
查找/etc 下面的文件,比passwd还新的文件
find /etc -newer /etc/passwd
2、与用户和用户组有关的参数
-uid n n为数字,是使用者的id ,就是uid,记录在pswwd里面
-gid n n为数字,是用户组的id ,就是gid,记录在group里面
-user 【name】 使用者的名称
-group 【name】 用户组的名称
-nouser 查找拥有者不在passwd的
-nogroup 查找用户组不在group中的
3、与文件权限及名称相关的参数
-name 【名字】 查找名为这个名字的文件 *代表多个未知字符,
-size [ + - ][size] +代表查找比size大的文件,-代表查找比size小的文件 如 -size +20k
-type [类型] 查找类型为这个的文件,正规文件(f) 设备文件(b、c) 目录(d) 链接(l)
-perm [权限] 查找权限刚好为这个权限的文件 如 -perm 4771
-perm -[权限] 查找权限包括这个权限的文件 如 -perm -4771
-perm /[权限] 查找权限包含这个权限的任一个的权限的文件 -perm /4771
4、其他
-exec 【命令】 这个选项后可接其他命令来处理查询的结果
-print 输出在屏幕,这是默认的
实例 查找出所有.c文件并删除
find -name *.c -exec rm -rf {} ;
这是固定格式
可在文件内查找特定内容
格式为:grep [选项] ”模式“ [文件]
常用选项
-n 输出显示行号 -v 去除包含此参数的行,输出剩余行 -i 忽略字符大小写的差别
实例 在文件中搜索一个单词,命令会返回包含“match_pattern”的文本行:
grep gfx /etc/passwd
结果:
在多个文件中查找
grep "match_pattern" file_1 file_2 file_3 ...
不显示注释
grep -v "#" file_name
使用正则表达式 -E 选项
grep -E “[1-9]+” egrep “[1-9]+”
以上是大佬教程为你收集整理的Linux系统学习---文件查找和文件内容搜索(二)全部内容,希望文章能够帮你解决Linux系统学习---文件查找和文件内容搜索(二)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。