LINUX学习之查找文件命令(七)
find命令
命令描述
find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端
以下是find命令的使用参数:
find命令参数 | 描述 |
---|---|
-name |
按照指定的查询方式查找文件 |
-user |
查找指定用户的所有文件 |
-size |
按照指定的文件大小查找文件, 单位有b(快)、c(字节)、w(字)、k(千字节)、M(兆)、G(吉字节) |
使用实例
1.查找/root目录下的.txt文件
find root/ -name "*.txt"
2.查找/opt目录下, 用户名称为henry的文件
find /opt -user henry
3.查找/home目录下文件大于100m的文件
find /home -size +100M
locate命令
命令描述
locate命令是Linux系统中常用的文件查找命令, 使用数据库来查找文件, 所以它的查询速度非常快。
由于locate指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb
指令创建locate数据库。
另外需要注意的是,默认情况下,locate命令只能查找用户自己可见的文件,如果要查找所有文件,需要使用sudo命令或者是使用root用户来查找。
以下是locate命令常用的参数:
常用参数 | 描述 |
---|---|
-c |
显示查找到的文件数量 |
-i |
忽略大小写 |
-r |
递归搜索 |
使用实例
1.查找系统中所有文件名中包含"example"的文件
locate -i "example"
2.查找/path/to/folder文件夹中所有包含"example"的文件
locate -i -r "example" /path/to/folder
grep命令
命令描述
grep命令是Linux系统中常用的文本查找工具。它可以在文本文件或者是标准输入中查找指定的文本, 通常配合管道符"|"进行使用
以下是grep命令常用的参数:
常用参数 | 描述 |
---|---|
-c |
显示匹配行数 |
-i |
忽略大小写 |
-r |
递归查询 |
-n |
显示行号 |
-v |
查找不匹配的行 |
使用实例
1.查找/path/to/folder文件夹中所有文件中包含example的行
grep -r "example" /path/to/folder
2.匹配test.txt内容中包含'go'的字符串
grep 'go' test.txt
3.查找当前目录中文件名带"flag"的文件, 并显示行号
ls | grep -n "flag"