find命令详解和特殊权限及if语句
文件查找:
在文件系统上查找符合条件的文件
文件查找:locate,find
非实时查找(数据库查找):locate
实时查找:find
locate:依赖于事先构建的案例;索引的构建是在系统较为空闲时自动进行(周期性任务);手动更新数据库(updatedb);索引构建过程需要遍历整个根文件系统,极消耗资源
工作特点:查找速度快;模糊查找;非实时查找;
find:
实时查找工具,通过遍历指定路径下的文件系统完成文件查找
工作特点:查找速度略慢;精确查找;实时查找
语法:
find [option]...[查找路径] [查找条件] [处理动作]
查找路径:指定具体目标路径,默认为当前目录
查找条件:指定的查找标准,可以文件名、大小、类型、权限等标准进行,默认为找出指定路径下的所有文件
处理动作:对符合条件的文件做什么操作,默认输出至屏幕
Linux特殊权限
(1)权限
r,w,x
user,group,other
(2)安全上下文
前提:进程有属主和属组,文件有属主和属组
(1)任何一个可执行程序文件能不能启动为进程,取决发起者对程序文件是否拥有执行权限
(2)启动为进程之后,其进程的属主为发起者;进程的属组为发起者所属的组
(3)进程访问文件时的权限,取决于进程的发起者:
(a)进程的发起者,同文件的属主,则应用文件属主权限
(b)进程的发起者,属于文件的属组,则应用文件属组权限
(c)应用文件“其它”权限
(3)SUID
(1)任何一个可执行程序文件能不能启动为进程,取决发起者对程序文件是否拥有执行权限
(2)启动为进程之后,其进程的属主为原程序文件的属主
权限设定:
chmod u+s FILE...
chmod u-s FILE...
(4)SGID
默认情况下,用户创建文件时,其属组为此用户所属的基本组;
一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的基础
权限设定:
chmod g+s DIR...
chmod g-s DIR...
(5)Sticky
对于一个多人可写的目录,如果设置了sticky,则每个用户仅能删除自己的文件
权限设定:
chmod o+t DIR...
chmod o-t DIR...
SUID SGID STICKY
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
chmod 4777 /tmp/a.txt
bash脚本编程:
过程式编程语言:顺序执行,选择执行,循环执行
选择执行:
if 判断条件;那么,条件为真的分支代码
结束
if 判断条件;then,条件为真的分支代码
else,条件为假的分支代码
fi

浙公网安备 33010602011771号