本博客重在简单介绍用户和用户组以及Vim编辑器

用户和用户组基础概念

基本概念

用户(user)

  1. 计算机系统通过用户名和密码识别用户身份

  2. 每个用户都有唯一用户ID(UID)

  3. Linux系统中,新建用户后,必须设置密码才能使用

  4. 密码输入时默认不可见,确保安全性

超级用户(root):

  1. 系统内置的最高权限用户

  2. 拥有对系统的完全控制权

  3. 默认存在,首次使用时需要设置密码

  4. 可以执行任何命令,修改任何文件

用户组(Group):

  1. 将多个用户归类管理的机制

  2. 每个用户组有唯一的组ID(GID)

  3. 便于批量设置文件权限

  4. 每个用户至少属于一个主组,属于多个附属组

用户类型

超级用户:

  1. 用户名:root

  2. UID:0

  3. 拥有系统最高权限

普通用户:

  1. 安装系统时创建的用户(如 st )

  2. 由超级用户创建的用户

  3. UID范围:1000——65535

  4. 权限受限制,需要 sudo (获取临时权限)

用户管理

超级用户密码设置

修改root用户密码:

sudo passwd root

操作步骤:
  1. 输入命令后按回车

  2. 系统提示输出当前用户密码(验证权限)

  3. 输入新的root密码(不可见)

  4. 再次输入确认密码

  5. 设置成功

注意:输入密码时无提示是正常安全机制

用户切换

普通用户切换到ROOT:

  1. sudo -i 在登陆账户(st)直接切换

  2. su root()(需要密码)

ROOT切换到普通用户:

  1. su 用户名

查看当前用户:

whoami

用户创建

执行权限:root用户
基本语法:

sudo useradd [选项] 用户名(sudo在普通用户下需要使用)

常用选项:
  1. -d : 指定用户主目录{我们可以在创建用户的同时给该用户在/home下创建一个文件夹}

  2. -m : 自动创建用户

  3. -g : 指定用户组

  4. -G : 指定附属用户组

创建用户示例:

sudo useradd -d /home/jiamin -m jiamin(创建用户jiamin,自动创建/home/jiamin目录,因为没有指定组,此时会默认产生一个组jiamin)

sudo useradd -d /home/haodong/ -m -g jiamin haodong(创建用户haodong,自动创建/home/haodong目录,指定组为jiamin,注意要先创建好组jiamin)

sudo useradd -d /home/hange -m -g jiamin -G st,root hange``(创建用户hange,自动创建hange目录,指定主组为jiamin,附属组为st,root(附属组用逗号分隔)

用户创建完成后自动完成的操作:
  1. /etc/password 文件中添加用户信息

  2. /etc/shadow 文件中添加密码信息

  3. 创建用户主目录(如/home/jiamin)

  4. 创建同名的用户组(如 jiamin 组)

用户密码管理

设置用户密码:

sudo passwd

选项说明:
  1. -l : 锁定用户账号

  2. -u : 解锁用户账号

  3. -d : 删除用户密码

  4. -e : 强制用户下次登录修改密码

用户信息查看

查看用户所属组

groups 用户名

查看所有用户信息

cat /etc/passwd(查看用户基本信息)

sudo cat /etc/shadow(查看所有信息)

用户修改

基本语法:

sudo usermod [选项] 用户名

常用选项:

-c : 修改用备注消息

-g : 修改主用户组

-G : 修改附属用户组

用户删除

基本语法:

sudo userdel [选项] 用户名

常用选项:
  1. -f : 强制删除,即使用户已登录

  2. -r : 同时删除用户主目录及相关文件

用户组管理

用户组创建

sudo groupadd [选项] 组名

组信息查看:

查看所有用户组:
查看组信息:

cat/etc/group

查看组密码信息:

sudo cat /etc/gshadow

查看特定组:

grep '组名' /etc/group

grtent group 组名

组修改

基本语法:

sudo ground [选项] 组名

常用选项:
  1. -g :修改组ID

  2. -n:修改组名

权限管理

权限类型:

  1. r : 读权限,查看文件内容(cat,less,head,tail),列出目录内容(ls)

  2. w : 写权限,修改文件内容(touch,vim),创建删除目录(mkdir,rmdir,rm等)

  3. x : 执行权限,执行文件(./程序名),进入目录(cd等)

权限对象:

  1. u: user,文件所有者

  2. g: group,文件所属组

  3. o: other,其他用户

权限表示法:

设置所有者和权限

设置所有者和所属组
演示示例:

修改文件所有者为jiamin :

sudo chown jiamin /home/work/demo01.c

修改文件所属组为workgroup:

sudo chown : workgroup /home/work/demo01.c

上面两个缩写为一条

sudo chown jiamin : workgroup /home/work/demo01.c

递归修改目录及其内容 , 此时所有文件所有者都是jiamin,所有组都是workgroup

sudo chown -R jiamin:workgroup /home/work

设置权限:

设置所有者对demo01.c的权限为读写执行,所属组权限为读执行,其他用户对于改文件权限为无权限《权限表示法》

sudo chmod 750 /home/st/demo01.c

递归修改目录权限一致

sudo chmod -R 750 /home/work

Vim编辑器

Vim是Vi编辑器的增强版,是Linux系统中最强大的版本编辑器之一。

Vi与Vim的区别

  • Vi : Linux系统内置的基本文本编辑器,类似于windows记事本

  • Vim :Vi的增强版,需要额外安装,功能更强大

    • 语法高亮显示

    • 多级撤销/重做

    • 插件扩展性

    • 代码折叠

    • 多窗口编辑

    • 正则表达式搜索

Vim安装与卸载

在线安装
  1. 更新软件源 : sudo apt-get update

  2. 安装Vim,请他软件安装同理,仅需换一下安装名 : sudo apt-get install vim

卸载
  1. 卸载vim,请他软件安装同理,仅需换一下安装名:sudo apt-get remove vim

  2. 彻底卸载(包括配置文件) : sudo apt-get purge vim

Vim启动与退出

启动Vim
  • 仅仅启动Vim(不打开文件,不推荐) : vim

    1. 在Vim中打开文件 : e 文件名

    2. 在Vim中导入文件 : r 文件名

  • 打开指定文件(推荐) : vim 文件路径

  • 打开文件并定位到最后一行(适用于打开配置文件) : vim 文件路径 +

  • 打开文件并定位到指定行(代码出现错误时修改适用) : vim 文件名 + 行号

退出Vim
#1.先按ESC确保进入命令模式
#2.进入末行模式(按下按键 ‘:’)
#3.选择退出方式
:q      #不保存退出
:wq     #保存并退出
:q!     #强制退出不保存(丢弃所有修改)
:wq!    #强制保存并退出(在系统提示请使用wq!进行保存时使用)
:x      #保存并退出 (= wq,效率更高)
ZZ      #命令模式下直接保存并退出(无需进入末行模式)

Vim工作模式

vim有三种工作模式

快速记忆:
  1. 命令模式:快捷键操作

  2. 输入模式:编辑文件

  3. 末行模式:输入指令

Vim常用指令操作

常用删除操作
快捷键 功能 模式
x 删除当前光标出一个字符 命令模式
nx 删除当前光标所在处n个字符(如6x) 命令模式
dd 删除当前光标所在行 命令模式
ndd 删除当前光标开始的n行 命令模式
:n1,n2d 删除第n1到n2行(例如:2,12d) 末行模式
常用拷贝操作
  1. 可视模式复制:

    • 按 ESC 确保进入命令模式

    • 再按v进入可视模式

    • 使用方向键↑↓←→选中文本

    • 按y完成拷贝

    • 使用p进行粘贴

  2. 行复制:

    快捷键 功能 模式
    yy 复制当前行(单行复制) 命令模式
    nyy 复制n行 命令模式
    :n1,n2 copy dn 复制n1~n2行粘贴到dn行后如:3,6 copy 7 (copy可缩写为co) 末行模式
    粘贴操作
    快捷键 功能 场景 模式
    p 粘贴在当前行的下方或者光标之后(字符) 配置yy,nyy,可视模式复制 命令模式
撤销操作
快捷键 功能描述 windows快捷键 命令模式
u 撤销上一步操作 Ctrl + z 命令模式
ctrl + r 重做撤销操作(对撤销操作进行还原) Ctrl + y 命令模式
查找操作
1. 基本查找

命令 功能 查找方向 模式
/string 查找字符串 从当前位置向后匹配每一行第一个查找的数据 末行模式
/string/g 查找字符串 从当前位置查找每一行查找的数据 末行模式
  1. 查找控制

替换操作
语法:
:[范围]s/查找字符串/替换字符串/[标志]
范围说明:
  • % : 全文范围

  • n1,n2 : 第n1到第n2行

  • . : 当前行

  • $ : 最后一行
  • .,$ : 从当前行到最后一行

标志说明:
  • g : 全局替换(匹配行中所有匹配项),如int func(int a,int b);匹配所有int 。 不写匹配一行中的第一个匹配项

  • i :或略大小写,如i/I -> i + I

  • I :区分大小写,如i -> i ,I->I

示例
:%s/int/void
:%s/int/void/g

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐