1、脚本文件名的搜寻
which (寻找执行档)
which [-a] command
在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 参数a表示PATH中可以找到的所有的指令均列出
2、文件档名的搜寻
whereis [-bmsu] 文件或目录名
-l 可以列出whereis会去查询的几个主要目录
-b 只找二进制格式的文件
-m 只找在说明文件manual路径下的文件
-s 只找source来源文件
-u 搜寻不在上述三个目录中的其他特殊文件
locate [-ir] keyword
-i 忽略大小写
-r 后面可接正规表示法的显示方式
但是locate搜寻的是已建立的数据库 /var/lib/mlocate 中的数据,所以需要更新数据库才能找到某些新文件,可用updatedb指令在搜索的同时更新数据库
find [PATH] [option] [action]
find指令的参数非常多也比较复杂 ,此处只介绍几个常用的
-name 例子:find /etc -name "host*" -print 表示寻找/etc目录下名字中开头是‘’host‘’的文件,*为通配符。
-perm 例子:find . -perm 755 -print 寻找此目录下权限为755的文件
-user 例子:find /etc -user peida -print 在/etc目录下查找文件属主为peida的文件
-nouser 例子:find /home -nouser -print 找到那些属主在/etc/passwd文件中没有有效帐户的文件。在使用-nouser选项时,不必给出用户名; find命令能够为你完成相应的工作
-group 可以根据-user理解
-nogroup 可以根据-nouser理解
-newer 例子:find -newer log2012.log ! -newer log2017.log 查找更改时间比文件log2012.log新但比文件log2017.log旧的文件 ,!是逻辑非
-type 例子:find /etc -type l -print 在/etc目录下查找所有的符号链接文件
-size 例子:find . -size +10 -print //在当前目录下查找长度超过10块的文件(一块等于512字节)
find . -size +1000000c -print // 在当前目录下查找文件长度大于1 M字节的文件
find /home/apache -size 100c -print //在/home/apache目录下查找文件长度恰好为100字节的文件
网友评论