linux-查找命令

linux的查找命令

Linux的五个查找命令:find,locate,whereis,which,type 及其区别
find 可找到想找的任何文件
find path -option

find . -name "my*"     #当前目录(含子目录,以下同)查找所有文件名以my开头的文件
find . -name "my*" -ls #当前目录(含子目录,以下同)查找所有文件名以my开头的文件,并显示详细信息
find . -type d #查看当前目录下所有目录(包括子目录包含的所有目录)
find . -type f #查看当前目录下所有文件(包括子目录包含的所有文件)

#----------------------------
# brief:与xargs结合使用
#----------------------------
find . -name "*x64*" | xargs rm -rf     #删除搜索的结果,find、rm组合使用
find . -mtime +10 -name  "*" | xargs rm #删除搜索到的10天前的任何文件
find . -mmin  +10 -name  "*" | xargs rm #删除搜索到的10mins前的任何文件
find . -maxdepth 1  -group root -name bin #只查找当前目录下隶属root用户的名称为bin的文件
find . -group root -name bin              #只查找当前目录及其所有子目录下隶属root用户的名称为bin的文  件
find . -name "*.cpp" | xargs grep -n "main()" #在当前目录及子目录中所有cpp文件中搜索关键字main(),并  显示行号

locate
linux每天自动更新一次包含本地所有文件信息的数据库,locate不搜索具体目录而是搜索这个数据库,因此locate查不到最新变动过的文件,因此使用locate命令之前可以先使用updatedb手动更新数据库

updatedb
#搜索test中所有以fil开头的文件,即使当前目录为test,也不能用locate ./fil
locate  /home/lyu/Desktop/test/fil
locate  ~/Desktop/test/fil

whereis
用于对程序名的搜索,

whereis grep #返回grep二进制文件的路径、man说明文件和参数文件的路经

whick
PATH变量指定的路径中,搜索某个系统命令的位置,可查看某个系统命令是否存在

which find #返回"/usr/bin/find"

grep 数据查找、匹配定位

grep "boo" file1      #查询文件file1中包含"boo"的每一行
grep -n  "boo" file1  #查询文件file1中包含"boo"的每一行,带行号
grep -c  "boo" file1  #查询文件file1中包含"boo"共多少行,只显示匹配到的行的数量,小于等于"boo"的个数
grep -vn "boo" file1  #查询文件file1中不包含"boo"的每一行,带行号

n #显示行号
i #匹配字符串是忽略大小写
c #显示匹配到的行数

grep "e$" file1 #搜索file1中以e结尾的行,只有一行的最后一个字符为e才符合

type

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值