删除目录文件 rm -rf使用rm -rf 目录名字 命令即可
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
eg
删除文件夹实例:rm -rf /var/log/httpd/access
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹
删除文件使用实例:rm -f /var/log/httpd/access.log
将会强制删除/var/log/httpd/access.log这个文件
软与源文件不是同一个文件,文件类型不同,inode不同,内容不同;硬链接则相同
一、切换root身份不同
1、su命令:su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成来root身份了。只有切换了Shell环境才不会出现PATH环境变量错误,报command not found的错误。
2、su - 命令:su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工自作目录;而用su -命令切换以后,工作目录变成root的工作目录了。
二、采用su deploy命令后,取目标用户不同
1、su命令:su不会读取目标用户的环境配置文件,如图。
2、su - 命令:su - 读取目标用户的环境配置文件,如图。
综上总结:有“-”和无“-”各自的环境变量不同。
三、service命令
1、su命令:使用 su root 切换到root用户后,不可以使用service命令;
2、su - 命令:使用 su - 后,就可以使用service命令了。
四、用echo $PATH命令后,环zhidao境量不同
1、su命令:环境量变为usr。
2、su - 命令:环境量变为oracle。
可以根据特定的字符串,对指定文件的每一行进行搜索,如果找到了这个字符串,就将含有这些内容的行输出。
查找文件里有字符h的字符串:grep h 文件名
匹配整个单词:grep -w 单词 文件名
匹配以q开始的行:grep ^[q] 文件名
匹配以q结束的行:grep q$ 文件名
匹配以数字开头的行:grep ^[0-9] 文件名
匹配以q或者f开头的行:grep ^[qf] 文件名
不匹配以q或者f开头的行:grep ^[^qf] 文件名
匹配oo前面不是f或者g的字符串:grep [^gf]oo 文件名
匹配以#号开头的行:grep ^#
过滤空白行:grep ^$
如果要明确搜索子目录:grep -r h ./*
忽略子目录:grep -d skip h ./*
-l:查询多文件时只输出包含匹配字符的文件名
搜索时忽略大小写:grep -i
搜索时显示没有匹配到的行:grep -v
搜索时显示匹配到的那一行以及下2行:grep -A 2
搜索时显示匹配到的那一行以及上2行:grep -B 2
搜索时显示匹配到的那一行以及上下2行:grep -C 2
1.与时间有关的参数:共有-atime(访问时间access time),-ctime(文件属性包括内容修改时间 change time),-mtime(文件内容修改时间 modify time)。ll --time=atime
-mtime n:意义为在n天之前的一天之内被更改过的文件;-mtime 4,前4~5那一天的文件名
-mtime -n:列出在n天之内(包含n天本身)被更改过的文件名;-mtime -4,小于等于4天内的文件名
-mtime +n:列出在n天之前(不包含n天本身)被更改过的文件名;-mtime +4,大于等于5天前的文件名
find /-mtime 0 #0代表目前的时间,所以从现在开始到24小时前有改动过内容的文件都会被列出来
find /etc/ -newer /etc/passwd寻找/etc/下面的文件,如果文件日期比/etc/passwd新就列出
2.与用户或者用户组名有关的参数
-uid n:n为数字,这个数字是用户的账号ID,即UID
-gid n:GID
-user name:根据文件拥有者寻找文件
-group name:根据文件所属组寻找文件
-nouser:寻找文件的所有者不存在/etc/passwd的人
-nogroup:寻找文件的所有用户组不存在于/etc/group(当你自行安装软件时,很可能该软件的属性当中并没有文件所有者)
3.与文件权限及名称有关的参数
-name filename:查找文件名为filename的文件,支持通配符*和?(由于find命令自己能解析通配符的含义,所以加引号不会让*和?这两个符号失效)
-size [+-]SIZE:查找比SIZE还要大(+)或者小(-)的文件。这个SIZE的规格有:c代表字节,k代表1024字节。-size +50k表示要找比50kB还要大的文件。
-type TYPE:根据文件类型查找文件,一般正规文件f,设备文件c、b,目录d,链接文件l,socket(s),FIFO(p)
-perm -mode:根据文件权限寻找文件。-perm -0744,当一个文件权限为4755时,也会被列出来。
-perm +mode:查找文件权限“包含任一mode的权限”的文件。-perm +755,当一个文件权限为-rw-------时也会被列出来,因为它有rw的属性存在
find /bin /sbin -perm +6000找出在/bin和/sbin这两个目录下具有SUID或SGID的文件
4.其他可执行的操作
-exec command:command为其他命令,-exec后面可再接其他的命令来处理查找到的结果
-print:将结果打印到屏幕上,这个操作是默认操作
find / -perm +700 -exec ls -l {} \;
{}表示“由find找到的内容”,find的结果会被放置到{}位置中。
-exec一直到“\;”是关键字,代表额外命令的开始(-exec)到结束(\;),在这中间的就是find命令内的额外命令。额外的命令不支持命令别名。
find 查找范围 查找条件
-maxdepth 查看多深的文件,不能超过所限制的目录下的内容
-not 非
-o 或
-a 与
-user 查找属于某用户的文件
-size 20K 按文件大小查找20K 的文件
-size -20K 查找不大于20K的文件
-ctime 5 五内的时间点修改过的文件
-ctime +5 五天前修改或的文件
-ctime -5 小于五天修改过的文件
-cmin 5 查看距现在5分钟时修改
-cmin -5 查看五分钟内修改的文件
-cmin +5 五分钟之前修改的文件
-perm 按权限查找
-perm 555 查找权限为555的文件
-perm -444 查找所有人 所有组 其他人 有读权限的文件
-perm /444 查找所有人 或所有组 或其他人 至少有一个有读权限的文件
将 /mnt 下有555权限的文件改为444
查找/etc下所有后缀名为 .conf 的文件,并复制到 /mnt/mnt