一、find
find [path] [options] [expression]
1、与时间有关的参数:共有-atime,-ctime,-mtime。ll --time=atime
-mtime n:意义为在n天之前的一天之内被更改过的文件
-mtime 4,前4~5那一天的文件名
-mtime -n:列出在n天之内(包含n天本身)被更改过的文件名
-mtime -4,小于等于4天内的文件名
-mtime +n:列出在n天之前(不包含n天本身)被更改过的文件名
-mtime +4,大于等于5天前的文件名
find /-mtime 0
find /etc/ -newer /etc/passwd寻找/etc/下面的文件,如果文件日期比/etc/passwd新就列出
2、与用户或者用户组名有关的参数
-uid n:n为数字,这个数字是用户的账号ID,即UID
-gid n:GID
-user name:根据文件拥有者寻找文件
-group name:根据文件所属组寻找文件
-nouser:寻找文件的所有者不存在/etc/passwd的人
-nogroup:寻找文件的所有用户组不存在于/etc/group(当你自行安装软件时,很可能该软件的属性当中并没有文件所有者)
3、与文件权限及名称有关的参数
-name filename:查找文件名为filename的文件,支持通配符*和?
(由于find命令自己能解析通配符的含义,所以加引号不会让*和?这两个符号失效)
-size [+-]SIZE:查找比SIZE还要大(+)或者小(-)的文件。
SIZE的规格有:c代表字节,k代表1024字节。-size +50k表示要找比50kB还要大的文件。
-type TYPE:根据文件类型查找文件,一般正规文件f,设备文件c、b,目录d,链接文件l,socket(s),FIFO(p)
-perm -mode:根据文件权限寻找文件。-perm -0744,当一个文件权限为4755时,也会被列出来。
-perm +mode:查找文件权限“包含任一mode的权限”的文件。
-perm +755,当一个文件权限为 -rw------- 时也会被列出来,因为它有rw的属性存在。
find /bin /sbin -perm +6000找出在/bin和/sbin这两个目录下具有SUID或SGID的文件。
4、其他可执行的操作
-exec command:command为其他命令,-exec后面可再接其他的命令来处理查找到的结果。
-print:将结果打印到屏幕上,这个操作是默认操作
find / -perm +700 -exec ls -l {} \ ; {} 表示“由find找到的内容”,find的结果会被放置到{}位置中。 -exec 一直到“\;”是关键字,
代表额外命令的开始(-exec)到结束(\;),在这中间的就是find命令内的额外命令。额外的命令不支持命令别名。
二、grep
1、grep可以根据特定的字符串,对指定文件的每一行进行搜索,如果找到了这个字符串,就将含有这些内容的行输出。
grep h 文件名
grep -w 单词 文件名
grep ^[q] 文件名
grep q$ 文件名
grep ^[0-9] 文件名
grep ^[qf] 文件名
grep ^[^qf] 文件名
grep [^gf]oo 文件名
grep ^#
grep ^$
grep -r h ./*
grep -d skip h ./*
grep -l 字符 文件名
grep -i
grep -v
grep -A 2
grep -B 2
grep -C 2