linux(find)
按文件名查找:
find /etc -name "ifcfg-ens33"
find /etc -iname 'ifcfg-ens33' 忽略大小写
find /etc -name 'ifcfg*' 以ifcfg开头的文件
按文件大小:
find /etc -size +3M 大于3M的文件
find /etc -size 2b b不是1byte,b是1个blocks,2b就是占据2个blocks(也就是>512且<=1024byte)
find /etc -size 3c c是1byte
find /etc -size -3G
find /etc -size +3k -ls 将找到的文件执行-ls命令动作
指定查找深度:
find / -maxdepth 5 -a -name 'ifcfg*' -a(and),-o(or),默认-a
按时间查找:
find /etc -mtime +3 修改时间超过3天
find /etc -atime 3 访问时间等于3天
find /etc -ctime -3 更改时间3天以内
按属主、属组查找:
find /home -user sb 属主是sb的文件
find /home -group xman 属组是sb的文件
find /home -user sb -a -group xman -a(and)
find /home -nouser 属主已被删除的文件
find /home -nogroup 属组已被删除的文件
find /home -nouser -o -nogroup or -o(or)
按文件类型:
find /dev -type f l普通文件
find /dev -type d d目录
find /dev -type l l链接
find /dev -type b b块设备
find /dev -type c c字符设备
find /dev -type s s套接字
find /dev -type p p管道文件
按inode号查找
find / -inum 1011
按文件权限查找
find . -perm 644 -ls
find . -perm -644 -ls
find /sbin -perm -4000 -ls 包含set uid
find /sbin -perm -2000 -ls 包含set gid
find /sbin -perm -1000 -ls 包含sticky
suid:作用于命令文件。在属主的执行权限(x)位置为s(表示属主有执行权限x,并且设置了suid权限),任何用户使用此文件时都可以获得属主的权限。
S(表示属主没有执行权限x,仅仅配置了suid权限),任何用户(除root)都无法执行此文件。

sgid:运行cat文件的用户,获得属组的权限

sticky:在共享目录下创建文件后,仅允许其作者(所有者)进行删除操作。其他用户无法删除。t(表示有执行权限)T(表示没有执行权限)
执行动作命令:
-delete
-exec 非交互
-ok 交互
find /home/ -name '*.txt' -ok rm -rf {} \; \;结束符
find /home -name 'sb.txt' -exec cp -rvf {} \;
find /home -name 'sb' -delete
配合|xargs
find /home -nouser or -nogroup |xargs rm-rf rm命令不支持|,需要加xargs使用
find . -name 'ab*' |xargs -I{} chmod 644 {} xargs将管道出来的数据存至{}里,以便后面的命令使用
find /home -nouser -nogroup |xargs -I{} chown root.root {}
find /root/ -name 'ppp' |xargs -I{} cp -rv {} /test

浙公网安备 33010602011771号