文件搜索命令
原理与Windows里面的文件搜索框一样
find
命令名称:find
命令所在路径:/bin/find
语法:find [搜索范围] [匹配条件(可多个同时使用)]
(1)-name 根据文件名搜索(精准搜索,大小写敏感)
*可以匹配任意字符
?可以匹配某个字符
-iname 不区分大小写
(2)-size 根据文件大小搜索
+n 大于n
-n 小于n
n 等于n
n为数据库(1个数据块等于512字节,即0.5kb)
(3)-user 根据所有者搜索
(4)-group 根据所属组搜索
(5)根据时间查找
-amin 访问时间access
-cmin 改变文件属性时间change
-mmin 改变文件内容时间modify
(6)-type 根据文件类型查找(f文件 d目录 l软连接文件)
(7)-inum 根据i节点查找(i节点可以用ls -i [文件或目录]查找)
功能:在指定范围内搜索指定条件的文件
例子:
find /etc -name init # 在目录/etc中查找文件init(精准搜索)
find / -size +204800 # 在根目录下查找大于100MB的文件
find /home -user wait1ess 在根目录下查找所有者为wait1ess的文件
find /etc -cmin -5 # 在/etc下查找五分钟内修改过属性的文件和目录
find /temp -type -f # 查找/temp下的所有文件
find /etc -name inittab -exec ls-l {} \; # 在/etc下查找inittab文件并显示其详细信息
注:-exec(or -ok) 命令 {} ; # 对搜索结果进行指定的命令操作
其他搜索命令
locate
命令名称:locate
命令所在路径:/usr/bin/locate
执行权限:所有用户
语法:locate 文件名
功能描述:在文件资料库中查找文件
例子:
locate inittab
注:类似于Windows搜索工具everything,对文件资料库进行搜索,搜索速度较快,但不是实时更新(需要系统会定期更新),可用命令updatedb进行更新资料库,占用资源较少
which
命令名称:which
命令所在路径:/usr/bin/which
执行权限:所有用户
语法:which 命令
功能描述:搜索命令所在目录以及别名信息
例子:
wihch ls
which useradd
whereis
命令名称:whereis
命令所在路径:/usr/bin/whereis
执行权限:所有用户
语法:whereis 命令
功能描述:搜索命令所在目录以及帮助文档路径
例子:
whereis ls
grep
命令名称:grep
命令所在路径:/bin/grep
执行权限:所有用户
语法:grep -iv [指定字串(大小写敏感)] [文件]
功能描述:在文件中搜寻指定条件的字串的行并输出
(1)-i 不区分大小写
(2)-v 排除指定字串
例子:
grep mysql /root/install.log
grep -i run /etc/inittab
grep -v ^# /etc/inittab # 把/etc/inittab文件内以井号开头的行都去掉然后输出