linux查找文件里面的内容(linux如何查找文件)

find

从指定目录向下递归的遍历其各个子目录,将满足条件的文件或者目录显示在终端。

第一个参数是搜索范围,比如/、/root、/root/test、之类的路径

第二个参数可以是-name,-size等,用的最多的是-name

  • find (搜索范围) -name (文件名):按照指定的文件名查找模式查找文件。
  • find (搜索范围) -user (用户名):按照指定的用户名查找模式查找文件。
  • find (搜索范围) -size ( 多少/-多少/多少):按照指定的文件大小查找模式查找文件(大于多少/小于多少/等于多少)
  • 查询 /目录(即根目录)下所有.txt的文件:find / -name *.txt
 find / -name *.txt
 find / -name mysqld
 find /  -name “ins*”   查找文件名称是以ins开头的文件
 
 find / -name “ins*” –ls 
 
 find / –user itcast –ls       查找用户itcast的文件
 
 find / –user itcast –type d –ls   查找用户itcast的目录
 
 find / -perm -777 –type d-ls    查找权限是777的文件

locate

locate (搜索文件)

  • 可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度较快为了保证查询结果的准确度,管理员必须定期更新locate时刻
  • 在第一次运行之前,必须使用updatedb指令创建locate数据库。locate 的速度比 find 快,它并不是真的查找,而是查数据库,一般文件数据库在 /var/lib/slocate/slocate.db 中,所以 locate 查找并不是实时的,而是以数据库的更新为准

语法

 locate [-d ][--help][--version][范本样式...]

参数:

  • -b, --basename -- 仅匹配路径的基本名称
  • -c, --count -- 只是输出找到的数量
  • -e, --existing -- 仅打印出当前现有文件的条目
  • -q -- 安静模式,不会显示任何错误讯息。
  • -l, --limit, -n LIMIT -- 将输出(或计数)限制为LIMIT个条目
  • -n -- 至多显示 n个输出。
  • -q, --quiet -- 安静模式,不会显示任何错误讯息
  • -h, --help -- 显示帮助
  • -i, --ignore-case -- 忽略大小写
 -- 必须先更新数据库
 updatedb
 -- 查找a.txt,只显示前两个
 locate -n 2 a.txt
 -- 查找a.txt
 locate a.txt

grep

过滤查找,表示将前一个命令的处理结果输出传递给后面的命令处理经常跟管道一起使用

  • grep [选项] 查找内容 源文件
  • -n:显示匹配行及行号。
  • -i:忽略大小写字母。
-- 在文件中查找内容
cat hello.txt | grep yes
cat test.py | grep print
cat test.py | grep -n  print
cat test.py | grep -n -i print
grep lang anaconda-ks.cfg –color 高亮显示
(0)

相关推荐