物联网工程运维之Shell脚本--find命令实战(预备知识)

一、运维常用命令:
清屏:clear
连续回车——看命令更清晰
mkdir abc:创建文件夹abc
touch abc:创建文件abc
chmod 755 abc:改变权限,使管理员对abc有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
chmod -x abc:取消所有人对abc的执行权限。
chmod a+x abc:对所有人增加执行权限。

pwd:查看当前目录

u user 表示该文件的所有者
g group 表示与该文件的所有者属于同一组( group )者,即用户组
o other 表示其它用户组
a all 表示这三者皆是

增加权限:+
撤销权限:-

r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。

cd .进入当前目录
cd. .进入根目录
cd. ./. .进入上一级目录的上一级目录
ln -s软链接
ll/etc/httpd.conf:列出文件所有权限、所在组
; 连接两个命令
&& 逻辑与 (先执行前面的命令,成功才执行后面的命令)
||:逻辑或(前面失败,才执行后面)

基于文件属性查找:
find [目录] -name
例如:find . -name “nginx*”->列出所有文件名包含nginx的文件
find [目录] -type(后加f/d,f文件,d目录)
find [目录] -size
find . -size +30M(查找大于30M的文件)
find . -size -30M(查找小于30M的文件)
find [目录] -perm(后面接755/644等)
find [目录] -exec:找到文件后执行
find [目录] -[参数] -exec[命令] {} \;
find [目录] -ok:找到文件后询问要不要执行

打包:
find . -name “nginx*” -maxdepth 1 -exec tar czxf nnnn.tar.gz{} ;
find . -type f -exec tar czvf n.tar.gz {} + (c=create)
find . -type f -exec tar uvf n.tar.gz {} \; (u=update)
tar czf n1.tar.gz nginx-1.14.2.tar.gz(打包后的文件命名)

查看压缩包的内容:
tar tvf n1.tar.gz

-exec和xargs的区别:
find . -type f | xargs tar czvf n.tar.gz
xargs:将管道左侧的输出,作为管道右侧命令的输入,并有切分执行功能

tar czvf nnn1.tar.gz nnn.tar.gz --remove-files(删除原文件nnn,生成新文件nnn1)

你可能感兴趣的:(运维,物联网,运维,centos,ubuntu,物联网,shell)