您的位置:首页 > 其它

find

2016-06-15 10:37 274 查看
语法:find [路径] [参数] [action]

-name filename,查找名为filename的文件

-iname filename,查找名为filename的文件,但是不区分大小写

-user username,查找属主为username的文件

-group groupname,查找属组为groupname的文件

-nogroup,查找没有有效属组的文件,即文件的属组在/etc/groups中不存在

-nouser,查找没有有效属主的文件,即文件的属主在/etc/passwd中不存

-uid,根据uid查找

-gid,根据gid查找

-mtime +n/-n,写入时间大于/小于n天的文件

-mmin +n/-n,写入时间大于/小于n分钟的文件

-atime +n/-n,访问或执行时间大于/小于n天的文件

-amin +n/-n,访问或执行时间大于/小于n分钟的文件

-ctime +n/-n,写入、更改inode属性(例如更改所有者、权限或者链接)时间大于/小于n天的文件

-cmin +n/-n,写入、更改inode属性(例如更改所有者、权限或者链接)时间大于/小于n分钟的文件

-type b/d/c/p/l/f/s,查是块设备、目录、字符设备、管道、符号链接、普通文件、socket文件

-size +n/-n[bmc],按文件大小查找

-perm,按执行权限查找

-prune,忽略某个目录

-a,连接两个不同的条件,但是两个条件必须同时满足

-o,连接两个不同的条件,两个条件中有一个满足即可

-not,对条件取反

例子:
-perm


#find /tmp -perm 755 //查找在/tmp目录下权限是755的文件

#find /tmp -perm +222 //表示只要有一类用户(属主,属组,其他)的匹配写权限就行

#find /tmp -perm -222 //表示必须所有类别用户都满足有写权限


-size

#find /tmp -size 2M //查找在/tmp 目录下等于2M的文件
#find /tmp -size +2M //查找在/tmp 目录下大于2M的文件
#find /tmp -size -2M //查找在/tmp 目录下小于2M的文件


查找完执行的action

# -print //默认情况下的动作

# -ls //查找到后用ls 显示出来

# -ok [commend] //查找后执行命令的时候询问用户是否要执行

# -exec [commend] //查找后执行命令的时候不询问用户,直接执行

#find /tmp -atime +30 -exec rm -rf {} \;#{}代表查找到的文件

#find /tmp -name "*.php"|xargs chmod a+x


指定多个目录


#find /etc /tmp /root -name passwd //目录之间用空格隔开


通配符使用


*,0个或多个任意字符

?,任意一个字符

[],括号里面的任意一个字符


-a,-o,-not


#find /tmp -name "*.php" -a -user root

#find /tmp -name "*.sql" -o user zhaoyn

#find /tmp -not -user root


忽略指定目录


#find ./ -path "./server" -prune -o -name "*.log" -print


忽略多个目录


#find ./ \( -path "./server" -o -path "./test" \) -prune -o -name "*.log" -print

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: