Linux:家目录&文件权限&vim使用

根目录&家目录

在这里插入图片描述

root用户无视权限

Linux有三个权限

可读r
可写w
可执行x

一个文件对不同用户有不同的权限分配

文件访问者的分类

文件所有者,文件所属组用户,其他用户

对于三种用户的理解:现有两个小组A、B、C,每个小组都有各自的成员,A小组写出了一个文件

用户不同用户简写
文件所有者(小组A)user—u
文件所属组用户(小组A中的成员)group—g
其他用户(小组B和C)other—o

linux中,文件类型是以罗列出的第一个字符区分,不是以后缀名区分

  • -rw- r-- r-- 1 root root 6223 mar 19 10:01 0319.sql
  • 文件标识符后的九个字符,每三个一组
    分别对应的是文件所有者,文件所属用户组,其他用户;
  • 所有文件都是这个顺序,不同的字符代表当前用户不同的权限
  • 第一个root是文件的拥有者
    第二个root是文件的所属组
    不属于这两个的都是other
-第一个 - 表示普通文件,然后每三个字符对应一个用户权限
rw-文件所有者有可读可写权限
r- -文件所属用户组有可读权限
r- -其他用户有可读权限(三个用户权限顺序是依次固定的)
1表示链接数
6223文件大小单位是字节
mar 19 10:01修改时间
0319.sql文件名

-:普通文件,文本,源代码,第三方动静态库
d:目录文件
l:链接文件
p:管道文件
b:磁盘
c:字符设备文件

gcc是Linux上面使用的一个软件,所以文件名必须是.c结尾

文件权限值的表示方式:

  1. 字符表示方式:r;w;x
    各用户对应的三个权限顺序分别是rwx,有则为相应字符,无为-
  2. 8进制数字表示形式:
    111 111 111,表示文件所有者,文件所属组用户,其他用户
    都有可读可写可执行的权限(有则为1,无为0)
    转成八进制后为 777

所以可以根据八进制数字确定各用户的权限;当数字为664时,那么文件所有者有可读可写权限;文件所属组用户有可读可写权限,其他用户有可写可执行权限

更改文件权限

  • 用户+/-字符权限:
    chmod +要更改的用户权限名简写(u/g/0) +或者- r/w/x +文件或文件夹名
    chmod u-r 1.txt
    chmod a=rw 1.txt
  • 八进制数字更改:
    chmod +8进制数字+文件或文件夹名

a就是all,每个组都会被改

权限对文件的影响

对于文件:

  • 可读:影响用户查看文件内容
  • 可写:影响用户往文件中写入内容
  • 可执行:文件可以被执行,但是,影响执行成功时能否查看文件的内容

对于文件夹:

可读:影响用户查看文件夹下的内容
可写:影响用户在文件夹下创建文件或者文件夹
可执行:影响用户进入文件夹

更改所属用户或所属用户组

chown+新用户+文件更改所属用户
chgrp+新用户组+文件更改所属用户组

更改的是文件夹需要加命令行参数-r

目录

目录权限是rwx
没有r:允许进入,可以在目录下创建文件,不能读文件
没有w:允许进入,可以查看,不能创建文件
没有rw:允许进入,不能查看创建文件
没有x:不能进入目录

目录也是文件
文件=内容+属性,目录的内容是保存了部分文件的属性

  • 创建的目录权限是775,创建的文件权限是664
  • 默认目录的起始权限是777,默认文件权限是666
  • 因为权限掩码umask是0002,在权限掩码中出现的权限都不应该在最终权限中出现
  • 默认权限≠最终权限
    最终权限=默认权限 去掉 umask中存在的权限
    最终权限=默认权限 & (~umask)

粘滞位

Linux下可以存在一些目录,拥有者和所属组是root,其他人允许以other的身份在该目录下进行增删改查

  • 在一个共享目录下,你不让我写,不让我读,但防不住被我删除
  • 给共享目录加粘滞位
    chmod +t 文件夹名

vim

  • 使用vim编辑文件:
    vim+文件名
    文件不存在则创建,代码都需要用vim命令进入文件开始编辑。

vim编辑文件,文件会有三种模式:

正常模式在此模式下不能往文件中写内容,需要进入到插入模式中才能编辑
插入模式在键盘上按i进入该模式,esc能从任何模式回到正常模式
低行模式先在键盘上按 :进入该模式,:+w保存,:+q退出,:+q! 强制退出

退出各模式要用Esc按键进入正常模式

正常模式下的快捷使用,都是按键:

  • 移动:
    移动光标:↑↓← → 键
  • h j k l:
    h向上,j向下,k向上,l向右

快捷命令:

gg回到第一行
G回到最后一行
num+G跳转到第num行

删除:

  • x:向后删除光标所在位置字符
    num+x:从光标处开始删num个字符
  • X:向前删除光标前的字符
    num+x:
  • dd:剪切一行,剪切完后不粘贴等同于删除
    num+dd:

复制:

  • yy:复制该行
    num:复制num行

粘贴:

  • 小写p:向光标所在的下一行粘贴
  • 大写P:向光标所在的上一行粘贴

替换:

  • r:替换当前光标所在字符
  • R:进入replace模式进行替换,按esc结束替换

撤销

  • u:撤销
  • ctrl+r:反撤销

更改:

  • cw:替换摸一个单词,并从正常模式切换到插入模式

跳动:

  • gg =G:整理当前代码格式

su:切换用户

su+要切换的用户名切换到某个用户,当前位置还在之前路径下
su+ -要切换的用户名切换到某个用户,并且回到新用户的家目录
su -:切换成root

sudo:提升权限

  • 以root的身份运行
  • root把用户添加到信任列表中,就不用输入root密码了
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值