一天一条linux命令之find

来源:岁月联盟 编辑:exp 时间:2012-04-11

find命令的主要功能是在系统中查找文件或目录。 find命令的一般形式为:find pathname -options [-print -exec -ok]print为对匹配文件输出到标准输出,默认为标准输出,故可不写exec为对匹配文件执行该参数给出的shell命令,形式为'command' {} /;ok与exec类似,更安全,每步需要用户确认。 1.-name 根据文件名匹配。例如:find ~ -name "test.txt" 在home路径及子目录下查找test.txt文件。find . -name "[a-z][A-Z][0-9][0-9]*" 在当前路径及子目录下查找,一个小写字母加一个大写字母加两个数字开头的文件。  www.2cto.com  find / -name "*.txt" 查找所有txt文件。 2.-perm(permission)根据权限匹配。例如:find . -perm 777 查找当前及子目录下所有权限为777的文件。(777意义详见chmod)find . -perm -777 查找权限大于等于777的文件。+为小于等于。 3.-user 根据用户匹配。例如:find . -user abc 查找abc属主的文件。 4.-nouser 查找属主账户已经被删除的文件。例如:find . -nouser 5.-group,-nogroup 与user,nouser类似。 6.-mtime 根据更改时间匹配。例如:find . -mtime -3 3天以内的find . -mtime +4 4天以前的 7.-newer 根据更改时间匹配。例如:find . -newer abc 更改时间比abc文件新的文件。find . -newer abc ! -newer 123 -exec ls -l {} /; 更改时间比abc新但比123旧的文件,列出其详细信息。!为逻辑非。  www.2cto.com   8.-type 根据文件类型匹配。文件类型(b:块设备文件d:目录c:字符设备文件p:管道文件l:符号链接文件f:普通文件)例如:find . -type f 查找普通文件。 9.-size 根据文件长度匹配。例如:find . -size +1000000c 文件大于1M字节的文件。注意数字后面的c,c代表用字节计量。find . -size 10 文件等于512块的文件。数字后没有c时,表示用块(1块=512字节)计量。 10.还可与xargs命令一同使用(后续介绍)。  作者 CrazyNemo