find 命令详解
find:查找文件
#find [PATH] [option] [action]
参数:
1.与时间有关的参数:有-atime,-ctime,-mtime,下面以-mtime说明。(假设n=3 72小时)
-mtime n :n为数字,意义为在n天之前的“一天之内”被更改过的文件。(72--96)
-mtime +n :列出在n 天之前(不含n天本身)被更改过的文件名。(96--很远之前)
-mtime -n :列出在n天之内(含n天本身)被更改过的文件。(72--现在)
-newer file :file为一个存在的文件,列出比 file 还要新的文件。
例如:
#find / -mtime 0
#find /etc -newer /etc/passwd
2.与用户或者用户组名有关的参数:
-uid n :n代表用户UID,UID是在 /etc/passwd里面与账号名称对应的数字。
-gid n :n代表用户组名GID,记录在 /etc/group 中。
-user name :name为用户账号名称。
-group name:name为用户组名。
-nouser :寻找文件的所有者不存在/etc/passwd 的人。
-nogroup :寻找文件的所有用户组不存在于 /etc/group 中的文件。
例如:
#find /home -user vbird
#find / nouser (不属于任何人的文件)
3.与文件权限及名称有关的参数:
-name filename:查找文件名为filename的文件。
-size [+-]SIZE:查找比SIZE还要大或者小的文件。SIZE规格有 c(byte),k(1024bytes).
-type TYPE :查找文件类型为TYPE的。类型主要有:一般正规文件(f),设备文件(b,c),目录(d),连接 文件(l),socket(s),FIFO(p)等属性。
-perm mode :查找文件权限刚好等于mode的文件,权限就是那些rwx,比如4755.
-perm -mode :查找出的文件的权限必须要包括“mode所有权限”的文件。
-perm +mode :查找出的文件的权限“包含任一mode的权限”。比如查找 -perm +755,但-rw-------也 会被列出,因为它有-rw...的属性。
例如:
#find / -name passwd
#find /var -type s
#find / -perm +7000
#find /bin /sbin -perm +6000
4.其他可进行的操作
-exec command : command 为其他命令(不支持命令别名),-exec后面可再接其他的命令来出来找到的数 据。
-print : 将结果打印到屏幕上,这个参数时默认的。
例如:
#find / -perm +7000 -exec ls -l {} \;
{}代表的是由find找到的内容,find的结果会放到{}内。
-exec一直到\;是关键字,代表find额外命令的开始到结束,在这中间就是find命令内的额外命令,这里就是ls -l {}.
因为 “;”在bash环境下有特殊意义,因此利用“\”转意。
find还可以利用通配符来查找。
#find /etc -name *httpd*
阅读(471) | 评论(0) | 转发(0) |