- 接上期:
文章目录
三、文件权限类
1、权限属性
其中最前面的一堆字母就是用户对该文件的拥有权限。
- 如果没有权限,则10位都是’-‘。从左至右用0-9这些数字来表示:
- (1)0 首位表示类型 在Linux中第一个字符代表这个文件是目录、文件或链接文件等等
- -代表文件
- d 代表目录
- l 链接文档(link file);
- (2)第1-3位确定属主(该文件的所有者)拥有该文件的权限。—User
- (3)第4-6位确定属组(所有者的同组用户)拥有该文件的权限,—Group
- (4)第7-9位确定其他用户拥有该文件的权限 —Other
目录or文件 | 权限 | 解释 |
---|---|---|
目录 | r | 可读(read): 可以读取,ls查看目录内容 |
w | 可写(write): 可以修改,目录内创建+删除+重命名目录 | |
x | 可执行(execute):可以进入该目录 | |
文件 | r | 可读(read): 可以读取,查看 |
w | 可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件. | |
x | 可执行(execute):可以被系统执行 |
2、chmod 改变权限
-
第一种方式变更权限 chmod [{ugoa}{+-=}{rwx}] 文件或目录
-
解释:u:user所属主用户权限,g:group所属组权限,o:other同组其它用户;a:all全部用户
- 修改文件使其所属组用户具有执行权限:组用户(group)
- 修改文件使其所属主用户(u)执行权限(x),并使其他用户(o)具有执行(x)权限
- 减少(-)权限或直接赋予权限(=)
- 修改文件使其所属组用户具有执行权限:组用户(group)
-
第二种方式变更权限 chmod [mode=421 ] [文件或目录]
- 利用数字,修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限。(r=4,w=2,x=1,r+w+x=7)
- 利用数字,修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限。(r=4,w=2,x=1,r+w+x=7)
3、chown 改变所有者即用户(change owner)
- 用户必须为root,才有权限修改用户和用户组
chown -R [最终用户] [文件或目录] :-R递归操作 改变文件或者目录的所有者
- 将a目录下的文件所属用户由hadoop1改为cxl
- 将a目录下的文件所属用户由hadoop1改为cxl
4、chgrp 改变所属组(change group)
chgrp [最终用户组] [文件或目录] 改变文件或者目录的所属组
5、chown 同时修改所属组和用户
chown [-R] 所有者:所属组 文件或目录
四、搜索查找类
1、find 查找文件或者目录
find [搜索范围][选项]
将从指定目录向下递归地遍历其各个子目录,将满足条件的文件路径显示在终端。
选项 | 功能 |
---|---|
-name<查询方式> | 按照指定的文件名查找模型查找文件 |
-user<用户名> | 查找属于指定用户名所有文件 |
-size<文件大小> | 按照指定的文件大小查找文件,单位为:b-块(512字节),c-字节,w-字(2字节),k-千字节,M-兆字节,G-吉字节 |
- 查找文件名为a.txt的文件(find -name a.txt);查找用户名位cxl的文件(find -user cxl);
2、locate 快速定位文件路径
locate [文件]
利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。由于locate基于数据库查询,所以第一次执行前需使用updatedb创建locate数据库。- 查找a.txt文件,输出全部包含a.txt字符的文件;如果不用updatedb,则不会输出a.txt文件,只输出系统本身就有的文件。
3、grep 过滤查找及“|”管道符
- 管道符“|”:表示将前一个命令的处理结果输出传递给后面的命令处理。
grep 选项 查找内容 源文件
选项-n显示匹配行及行号。- 在文件a.txt中查找“树”并显示行号。
- 在上面的结果中继续查找“堆”并显示行号。
五、磁盘、进程管理类
1、du 查看文件和目录的占用磁盘情况
选项 | 功能 |
---|---|
-h | 大小用G,K,M等显示,方便阅读 |
-a | 不仅查看目录,同时查看文件大小 |
-c | 显示所有文件和子目录大小后,显示总和 |
-s | 只显示总和 |
–max-depth=n | 指定统计子目录的深度为第几层 |
- 查看当前用户当前目录的占用情况
2、df 查看磁盘空间使用清理
df 列出文件系统的整体磁盘使用量
3、free 查看运行内存使用情况
4、ps 查看当前进程状态 ,类似于windows的任务管理器
ps -ef | grep xxx :查看子父进程间的关系,grep指定进程
ps aux | grep xxx:查看系统中所有进程的CPU和内存占用率,grep指定进程
选项 | 功能 |
---|---|
a | 列出带有终端的所有用户的进程 |
x | 列出当前用户的所有进程,包括没有终端的进程 |
u | 面向用户友好的显示风格 |
-e | 列出所有进程 |
-u | 列出某个用户关联的所有进程 |
-f | 显示完整格式的进程列表 |
- ps -ef:
显示信息说明:
UID用户名 , PID进程ID ,PPID父进程ID ,C CPU用户计算执行优先级的因子 ,STIME进程启动时间,TTY 完整的终端名称,TIME CPU时间 ,CMD启动进程所用的命令和参数
- ps aux
显示信息说名:
USER用户名,PID进程ID,%CPU CPU资源占比,%MEM物理内存占比, VSZ进程虚拟内存大小, RSS进程占用实际物理内存大小,TTY在哪个终端运行的, STAT进程状态,START进程启动时间,TIME 进程占用CPU的运算时间,非系统时间, COMMAND产生此进程的命令名
5、kill 终止进程
- kill [-9] 进程号 :通过进程号终止进程 ;[-9] 强迫进程立即停止
- killall 进程名:通过进程名终止进程,支持通配符,在系统因负载过大而变得很慢时有用
6、pstree 查看进程树
- pstree [-p/-u] :-p显示进程ID,-u显示进程所属用户
六、压缩与解压
1、gzip/gunzip 压缩(只能压缩文件且不保留源文件)
gzip 文件 :压缩 :只能将文件压缩为“文件.gz”格式
gunzip 文件.gz :解压
2、zip/unzip 压缩(能压缩文件和目录且保留源文件)
-
zip [-r] 压缩包命名 将要压缩的文件或目录名 :压缩文件或目录(有-r)
-
unzip [-d<存放目录>] xxx.zip: 解压压缩包
-
a、压缩解压文件
- 压缩文件c.txt 命名为c.zip: zip c.zip c.txt
- 解压c.zip,重命名为c2.txt;unzip c.zip ;会提示覆盖还是重命名,选择r重命名为c2.txt
- 压缩文件c.txt 命名为c.zip: zip c.zip c.txt
-
b、压缩解压目录
- 将目录a和b压缩为一个压缩包:zip -r ab.zip a b
- 解压 ab.zip 存放在目录a中:unzip -d a ab.zip
- 将目录a和b压缩为一个压缩包:zip -r ab.zip a b
3、tar 打包
tar [选项] xxx.tar.gz 需要打包的文件或目录。
选项 | 功能 |
---|---|
-c | create,产生.tar打包文件 |
-v | verbose,显示详细信息 |
-f | file,指定压缩后的文件名 |
-z | -gzip或-ungzip,通过gzip命令打包同时压缩 |
-x | extract,解压.tar文件 |
-C | 解压到指定目录 |
- 压缩:tar -zcvf xxx.tar.gz 文件1 文件2
- 解压:tar -zxvf xxx.tar.gz -C 指定解压后的文件存放目录
- 参考:尚硅谷