概述
本系列博客一共4篇,是对Linux系统知识的查漏补缺,Linux文件、目录、磁盘模式的一次扫盲知识点,下一篇学习shell的知识点。
Linux文件权限与目录配置
1.修改文件属性与权限
以前对于文件的权限总是记不住,也记不清给什么权限更合适更安全一些,所以对下面的命令进行一次梳理:
- chgrp : 修改文件所属用户组,修改所有组的时候要注意,不要指定不存在的组。
- chown : 修改文件拥有者,用户必须是已经存在系统中的账号
- chmod : 修改文件权限
需要注意的是 chown -R www:www ./tfb-web-api
可以改变所属组和所属用户,
# 改变所属组和所属用户
chown -R www:www ./tfb-web-api
# 指定一个文件 u=user g=group o=other
chmod -R u=rwx,g=rx,o=r
2.目录与文件权限的意义
- r: 可读取此文件实际内容,如读取文件的文字内容等
- w: 可以编辑、新增、或是修改该文件的内容
- x: 该文件具有可以被系统执行的权限
特别注意的有两点:
~
文件如果在它的家目录,它在此目录下具有rwx的完整权限,因此对于文件来说是有执行权限。
一个Linux文件能不能被执行,与它的第一栏的十个属性有关,与文件名一点关系也没有。
3.文件与目录管理
cp 常用的参数介绍,一般文件复制操作常用 cp -rp [源文件] [目标文件]
:
- -a : 全部
- -i :若目标文件已经存在时,再覆盖时会先询问操作的进行
- -p : 连同文件的属性(权限、用户、时间)一起复制过去,而非使用默认属性(备份常用)
- -r : 递归复制
mv 将文件或目录由一个目录移动到另一个目录中。如果源为文件,而且标为目录,那么mv命令将移动文件。如果源为目录,mv将重命名目录。
- -f : 若目标文件或目录与需要移动的文件或目录重复,则直接覆盖
- -b : 若目标文件存在,则覆盖前为其创建一个备份
- -i : 覆盖文件之前进行确认
4.查看和查找文件内容
cat -n
: 打印出行号,连同空行也会有行号。
tail
:
- -n :后面接数字,代表显示几行的意思
- -f :表示持续刷新显示
find 命令也是查找指定目录下的文件,语法格式
find -name php-fpm
查找/home/wwwroot/
目录下以T开头的文件和目录,命令分别如下:
find /home/wwwroot/ -name "t.*" -type f
find /home/wwwroot/ -name "t.*" -type d
5.磁盘管理命令
df: 列出文件系统的整体磁盘使用量
- -h 以人们交易阅读的格式自行显示
- -i 不用磁盘容量,而是以inode的数量来显示。
du: 查看文件系统磁盘的使用量,显示server目录的大小,忽略/usr目录,命令 du -sh ~/server
,~/server
是项目目录。
创建硬链接与符号链接 ln -sf 源文件 目标文件
- -s : 如果不加任何参数就进行链接,那就是硬链接,-s就是符号链接。
常用的vim命令
ctrl f
屏幕向下移动一页
ctrl b
屏幕向上移动一页
0
:移动到这一行的最前面字符处
$
: 移动到这一行的最后字符处
G
: 移动到文件的最后一行
gg
: 移动到文件的第一行
/stark
: 向光标之下寻找一个名称为stark的字符串
?stark
: 向光标之上寻找一个名称为stark的字符串
1,$s/stark/zcc/g
:从第一行到结尾,把stark替换成zcc