07_03_Linux文件查找详解07_04_特殊权限SUID等详解

复合运算符:

+=:即let I+=1相当于let I=I+1,亦相当于let I++

-=:同理

*=:同理

/=:同理

%=:同理

Linux文件查找详解

文件查找命令:

locate:全系统文件查找命令,非实时,查找是根据全系统文件数据库进行的,模糊匹配,但速度快,也可使用updatedb命令,手动生成文件数据库

find:实时,精确查找,但是速度慢,通过遍历指定目录中的所有文件完成查找,但优点是支持众多查找标准,使用方法如下:              

                   find  查找路径  查找标准  查找到以后的处理动作

其中如果查找路径省略,则默认为当前目录,查找标准默认为指定路径下的所有文件(包括隐藏文件),处理动作默认为显示

find查找标准:

-name  filename:对文件名做精准匹配

-iname  filename:文件名匹配不区分大小写

-regex  模式:基于模式(正则表达式)查找

-user  username:根据文件属主查找文件

-group Gname:根据文件属组查找文件

-uid  UID:根据文件UID查找文件

-gid  GID:根据文件GID查找文件

-nouser  :查找没有属主的文件

-nogroup :查找没有属组的文件

-type  文件类型:根据文件类型查找

         文件类型:f(普通文件)、d(目录)、b、c、l、p、s、

-size  数值:根据文件大小查找,默认为以字节值查找,可以通过k、m、g设置查找单位为kb,                     mb,gb,还可可以用+或-表示大于或是小于该值

组合条件:可以将find查找标准多个组合,如果给两个条件没给参数,则默认为-a也就是与逻辑

     -a:与,要两个条件同时满足

    -o:或,两个条件至少满足一个

    -not:非

-mtime:根据修改时间查找文件

-ctime:根据改变时间查找文件

-atime:根据访问时间查找文件

-mmin:表示修改时间根据分钟查找

-cmin:表示改变时间根据分钟查找

-amin:表示访问时间根据分钟查找

-perm  Mode:根据文件权限查找,精准匹配;-Mode:每一位权限都匹配才行(文件权限完全包含此mode时,即权限大于等于mode);/Mode:模糊匹配,9个权限中有一个匹配即可

处理动作:

-print:显示(默认)

-ls:即相当于ls -l命令

-ok  command  {}  \;    -ok命令用于跟命令,可以执行shell中的命令,{}表示引用,文件名称占位符,即指找到的文件,但是每次操作都要用户确认

-exec  command {} \;    每次操作都要用户不需确认


07_04_特殊权限SUID等详解

xargs:从标准输入接受命令并执行,以空格区分每一行(可用于替代find中 -exec但功能更强大)

例如: find /etc -size +1m  |  xargs echo >> /tmp/etc.largefiles

特殊权限:

SUID:运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者,

            例如:  chmod   u+s  file

注:当文件本身有执行权限,+s显示为小写s,否则为大写S

SGID:对应的,相应进程的属组是程序文件自身的属组,而不是启动者所属的基本组;当在目录中使用时,有该权限有用户所建的文件属组都将变为目录的属组

StiKey:在一个公共目录,每个人都可创建文件,删除自己的文件,但不能删除别人的文件;例如:chmod  o+t  dir

你可能感兴趣的:(07_03_Linux文件查找详解07_04_特殊权限SUID等详解)