1.打开文件
[root@localhost~]# vim 文件名
2.工作模式
vi与vim的四个模式
①.打开vim 文件名
进入编辑模式
i #在光标所在处进入编辑模式
a #在当前光标后面进入编辑模式
o #在当前光标的所在行的下一行进入编辑模式
I #在光标所在处行首进入编辑模式
A #在光标所在处行尾进入编辑模式
o #在光标的上一行进入编辑模式
#从编辑模式进入命令模式:ESC
②.命令模式
光标定位键盘:
0 $ #行首行尾
gg #页首---文本顶端
G(shift+g) #页尾--文本底部
3G #进入第三行
/string #查找字符,n下一个,N上一个 (n N 可以循环的)
③.文本编辑
yy #复制
3yy #从光标开始复制3行。在最后粘贴
ygg #从当前光标复制到页首
yG #从光标开始复制到页尾
dd #删除一行
3dd #从光标开始删除3行
dgg #从光标开始删除到页首
dG #从光标开始删除到页尾
d^ #删除当前光标之前的内容
p #粘贴到本行的下一行
大P #粘贴到本行的上一行
x #删除光标所在的字符
D #从光标处删除到行尾
u #undo撤销
r #可以用来修改一个字符
④.扩展命令(尾行)模式:
shift+: #进入尾行模式(扩展命令模式)
:10 #进入第10行
:w #保存
:q #退出
:wq #保存并退出
:wq! #强制保存退出
:q! #不保存并退出
进入其他模式
Ctrl+v #进入可视块模式
shift+v #进入可视行模式
⑤.查找替换
语法---------------:范围 s/old/new/选项
:s/world/nice/ #替换当前光标所在行的world为nice
:3s/sbin/nice/ #替换指定行
:1,5 s/nologin/soso/ #把1-5行的nologin 替换为soso
:%s/bin/soso/ #替换所有行
:%s/sbin/nice/g #替换行内所有关键字
注释:%表示替换所有行, g表示行内的所有关键字
将文件另存为:
语法--------------:w 存储到当前文件
:w /tmp/a.txt #另存为/tmp/a.txt
:1,3 /tmp/b.txt #把1-3行的内容另存到/tmp/b.txt
设置环境:
:set nu #设置行号
:set list #显示控制字符(隐藏字符)
:set nonu #取消设置行号
⑥.文件基本信息
1.时间类型
访问时间:atime, 查看内容
修改时间:mtime, 修改内容
该变时间:ctime, 文件属性,比如权限,mv改名等
②.查询示例
[root@localhost ~]# ls -l passwd #长格式查看passwd文件信息
-rw-r--r--. 1 r oot root 839 Oct 31 21:29 passwd
[root@localhost ~]# stat passwd
File: ‘passwd’
Size: 839 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 33583688 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2019-10-31 21:29:40.750993492 +0800
Modify: 2019-10-31 21:29:36.449993550 +0800
Change: 2019-10-31 21:29:36.452993550 +0800
Birth: -
Linux用户管理
1.用户管理
1.1创建用户组
[root@localhost ~]# groupadd hr #创建一个用户组叫hr
[root@localhost ~]# groupadd it #创建一个用户组叫it
[root@localhost ~]# groupadd jack -g 2000 #创建一个用户组叫jack,-g并指定gid为2000
[root@localhost ~]# grep 'jack' /etc/group #查看/etc/group中组的jack信息
jack:x:2000:
grep #过滤(搜索)
删除组
[root@localhost ~]# groupdel jack #删除jack组
/etc/group #查看组的文件
/etc/group文件详情
查看组
[root@localhost ~]# cat /etc/group
组名:代表组密码:gid:组员
cat #查看文件
1.2用户
创建用户 暂未指定选项
[root@localhost ~]# useradd user01 #创建用户user01
/etc/passwd ---->查看账户是否存在的文件
/home/ ---->用户的家目录,每创建一个用户会在/home目录下面创建对应的家目录
/etc/shadow --->用户的密码文件
/var/mail/ ---->系统邮箱
/etc/group ---->同名组/etc/passwd文件详解--案例:
此文件里面除了密码字段能删除不能直接修改之外,其他字段全部都能直接修改
[root@localhost ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
分隔符::
第一列:用户名
第二列:密码
第三列:用户标识号--->(uid)是一个整数,系统内部用它来标识用户。通常用户标识号的取值范围是0~65535。0是超级用户root的标识号
第四列:gid
第五列:描述信息。
第六列:家目录
第七列:是用户登陆到界面的第一个命令,开启一个shell。登陆shell1.判断用户是否存在:
[root@localhost ~]# id user01 //查看用户的uid、gid、和所在组
uid=1001(user01) gid=1003(user01) groups=1003(user01)
主组 附属组
uid 系统用来识别账户的user identify
gid 系统用来识别组的group identify2.查看现在所使用的的账户:
[root@localhost ~]# whoami 查看我现在所使用的账户
[root@localhost ~]# who 显示系统中所有登录用户的详细信息
[root@localhost ~]# w 显示当前登录用户的信息,以及系统中的负载等
1.3创建用户 (带有选项)
[root@localhost ~]# useradd user02 -u 503 #指定uid为503
[root@localhost ~]# useradd user05 -s /sbin/nologin #创建用户并指定shell
[root@localhost ~]# useradd user07 -G it,fd #创建用户,指定附加组
[root@localhost ~]# useradd user10 -u 4000 -s /sbin/nologin #创建用户,并指定uid为4000,并限制该用户登录-s 修改用户的登录shell
-u 指定uig
-G 指定附加组
1.4删除用户
[root@localhost ~]# useradd -r user02 #删除用户user02,同时删除用户的家目录
1.5用户密码
[root@localhost ~]# passwd alice #root用户可以给任何用户设置密码
[root@localhost ~]# passwd #root用户给自己设置密码
[root@localhost ~]# echo "123" | passwd --stdin username #给用户设置密码,免交互
[root@localhost ~]# su - alice
[alice@localhost ~]$ passwd #普通用户只能给自己修改密码,而且必须提供原密码
1.6用户操作
1.修改UID
-u
[root@localhost ~]# usermod -u new_id jack
[root@localhost ~]# id jack
uid=1005(jack) gid=1004(jack) groups=1004(jack)
2.修改用户的登录shell
-s
[root@localhost ~]# usermod -s /sbin/nologin user07 #修改用户的登录shellusermod -aG 添加用户到附属组
usermod -g 指定主组
usermod -G 指定附加组,会覆盖其他的附加组
组成员管理
只针对已经存在的用户
1.给组添加账户
-a
[root@localhost ~]# gpasswd -a user10 grp2
Adding user user10 to group grp2
2.同时添加多个用户到组
-M:members成员的缩写
[root@localhost ~]# gpasswd -M tom,alice it
3.从组删除用户1
-d
[root@localhost ~]# gpasswd -d user07 hr
Removing user user07 from group hr
1、熟练vim编辑器
2、使用命令对Linux用户进行管理操作
useradd
usermod
su
userdel
3、使用命令对Linux组进行管理操作
groupadd
groupmod
groupdel