Linux_知识总结02(vim使用+用户管理)
第三单元
1)vim的三种模式
命令模式、插入模式、退出模式
2)命令模式下配置vim的工作方式
set nu 行号添加
set nonu 取消行号
set mouse = a 添加鼠标选择
set cursorline 外线显示
以上操作只在当前打开的vim中生效,如果设定永久性生效编辑文件/etc/vimrc
3) vim命令模式下关键字搜索
/关键字
n 向下匹配
N 向上匹配
4)vim命令模式下字符管理
字符的复制
yl 复制一个字母
y3l 复制三个字母
yw 复制一个单词
y3w 复制3个单词
yy 复制一行
y3y 复制3行
p 复制完成后按“P”粘贴
字符的删除
dl 删除一个字母
d3l 删除3个字母
dw 删除一个单词
d3w 删除3个单词
dd 删除一行
d3d 删除3行
字符的解切
cl 剪切一个字母
c3l 剪切3个字母
cw 剪切一个单词
c3w 剪切3个单词
cc 剪切一行
c3c 剪切3行
esc -----> p 剪切过后会进入到插入模式,可执行粘贴动作时一定要退出插入模式
在命令模式下按“ctrl+v”进入到可视模式,在可视模式下可以区域选择字符,可视
模式下批量添加字符
>> ctrl+v 选中要加入字符所在列
>> 按“I”进入插入模式,写入要加入的字符
>> 按 esc
5) 批量修改字符
:%s/原有字符/替换后字符
只替换每一行中出现的第一个原有字符
:%s/原有字符/替换后字符/g
替换所有
6)vim的分屏功能
ctrl+w s 上下分屏
ctrl+w v 左右分屏
ctrl+w c 关闭光标所在屏幕
ctrl+w 上下左右 光标移动到指定屏幕
:sp file2 同时编辑当前文件和file2
7) vim 光标移动
在命令模式下
:数字 移动到指定的行
G 文件最后一行
gg 文件第一行
在插入模式下
i 光标所在位置插入
I 光标所在行行首
a 光标所在字符的下一个位置
A 光标所在行行尾
o 光标所在行下一行
O 光标所在行上一行
s 删除光标所在字符插入
S 删除光标所在行插入
8)vim的退出模式
:q 当用vim打开文件但没有对字符作任何操作时可直接退出
:q!当用vim打开文件并对字符作操作,放弃所有操作退出
:wq 保存退出
:wq!强行保存退出,对超级用户及文件所有人生效
9)vimtutor 提供vim的手册,键入“q”退出
10)标准输入、标准输出与标准错误
运行一个程序时,需要从某个位置读取输入信息,然后cpu处理,最后将输出显示到屏幕或文件
进程通过文件描述符的编号通道来获取输入并输出
编号 通道名称 描述 默认连接 用法
0 stdin 标准输入 键盘 仅读取
1 stdout 标准输出 显示屏 仅写入
2 stderr 标准错误 标准错误 仅写入
10)管理输出
输出重定向
会覆盖源文件内容
> 重定向正确输出
2> 重定向错误输出
&> 重定向所有输出
输出追加
不会覆盖源文件内容
>> 追加向正确输出
2>> 追加错误输出
&>> 追加所有输出
11)输入重定向
输入重定向
tr 'a-z''A-Z'<westos
格式化输入内容到文件
cat > westos <<EOF
HELLO
WORLD
EOF
12) 管道
符号:|
表示含义:将前一条命令的正确输出作为管道符后面命令的标准输入
stderr的输出不能通过管道
2>&1 可以把stderr转换成stdout
13) TEE 复制输出到指定位置
第四单元
1)什么是用户?
答:用户是操作者在系统中的身份,用户是系统最底层的安全机制的一部分,用户在系统中以
字符和文件的形式存在
2)用户存储文件
/etc/passwd>>>>>>>>>>>>>>>>zhaojuan:x:1002:8888::/home/zhaojuan:/bin/bash
用户信息文件,分解
用户名称
x
uid
gid
用户说明
用户加目录
用户默认开启的shell
/etc/group>>>>>>>>>>>>>>>>>xiyou:x:8889:zhaojuan
用户组信息文件
用户组名称
用户组密码
用户组 id
用户组成员
/etc/shadow>>>>>>>>>>>>>>>>wawa:!!:17566:0:99999:7:::
用户认证信息文件
用户名称
用户密码
密码已经使用时间
密码最短有效期
密码最长有效期
密码到期的警告
密码非活跃天数
密码到期日
3)useradd
用户新建用户
-u 指定用户的uid
-g 指定用户的gid
-G 指定用户的附加组
-c 指定用户的说明
-d 指定用户的家目录,默认为/home/username
-s 指定用户的shell类型
4)管理用户组
groupadd (建立用户组)
-g 指定组id
groupmod (修改用户组)
-g 修改组id
groupdel (删除用户组)
5)usermod(用于修改用户信息)
-l 修改用户名称
-u 修改用户的uid
-g 修改用户的gid
-aG 指定用户繁荣附加组
-c 修改用户的说明
-md 修改用户的家目录,默认为/home/username
-s 修改用户的shell类型
6)passwd
-l Lock,会将/etc/shadow第二栏最前面加上!使密码失效;
-u Unlock的意思!
-S 列出密码相关参数,亦即shadow文件内的大部分信息
-n 后面接天数,多久不可修改密码天数
-x 后面接天数,多久内必须要更动密码
-w 后面接天数,密码过期前的警告天数
-i 后面接“日期”,密码失效日期
7)chage
Last password change : Feb 04, 2018
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
-l 列出该账号的详细密码参数
-d 后面接日期,修改shadow 第三字段,格式YYYY-MM-DD
-E 后面接日期,修改shadow 第八字段,格式YYYY-MM-DD
-l 后面接天数,修改shadow 第七字段,(密码非活跃期)
-m 后面接天数,修改shadow 第四字段,(密码最短有效期)
-M 后面接天数,修改shadow 第五字段,(密码最长有效期)
-W 后面接天数,修改shadow 第六字段,(密码警告期)
8)用户权限下放sudo
sudo能把某些超级权限针对性下放,并且不需要普通用户知道root密码,所以sudo相对于权限
无限制性的sudo来说,还是比较安全的
sudo执行命令的流程是当前用户切换到root,然后以root身份执行命令,执行完成后,直接退
出到当前用户;而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权
9)用户权限下放sudo
vim /etc/sudoers 无语法检测
visudo 但有语法检测
文件内容编辑
99 ## Allow student to run useradd in my host
100 student desktop 126.example.com=(root) usr/sbin/useradd
注意:
怎么去查看主机名?
答:hostname
怎么查看命令useradd所在的文件?
which useradd
怎么实现第一次无密码执行命令?
NOPASSWD:/usr/sbin/useradd
sudo 命令
sudo useradd hello
1)vim的三种模式
命令模式、插入模式、退出模式
2)命令模式下配置vim的工作方式
set nu 行号添加
set nonu 取消行号
set mouse = a 添加鼠标选择
set cursorline 外线显示
以上操作只在当前打开的vim中生效,如果设定永久性生效编辑文件/etc/vimrc
3) vim命令模式下关键字搜索
/关键字
n 向下匹配
N 向上匹配
4)vim命令模式下字符管理
字符的复制
yl 复制一个字母
y3l 复制三个字母
yw 复制一个单词
y3w 复制3个单词
yy 复制一行
y3y 复制3行
p 复制完成后按“P”粘贴
字符的删除
dl 删除一个字母
d3l 删除3个字母
dw 删除一个单词
d3w 删除3个单词
dd 删除一行
d3d 删除3行
字符的解切
cl 剪切一个字母
c3l 剪切3个字母
cw 剪切一个单词
c3w 剪切3个单词
cc 剪切一行
c3c 剪切3行
esc -----> p 剪切过后会进入到插入模式,可执行粘贴动作时一定要退出插入模式
在命令模式下按“ctrl+v”进入到可视模式,在可视模式下可以区域选择字符,可视
模式下批量添加字符
>> ctrl+v 选中要加入字符所在列
>> 按“I”进入插入模式,写入要加入的字符
>> 按 esc
5) 批量修改字符
:%s/原有字符/替换后字符
只替换每一行中出现的第一个原有字符
:%s/原有字符/替换后字符/g
替换所有
6)vim的分屏功能
ctrl+w s 上下分屏
ctrl+w v 左右分屏
ctrl+w c 关闭光标所在屏幕
ctrl+w 上下左右 光标移动到指定屏幕
:sp file2 同时编辑当前文件和file2
7) vim 光标移动
在命令模式下
:数字 移动到指定的行
G 文件最后一行
gg 文件第一行
在插入模式下
i 光标所在位置插入
I 光标所在行行首
a 光标所在字符的下一个位置
A 光标所在行行尾
o 光标所在行下一行
O 光标所在行上一行
s 删除光标所在字符插入
S 删除光标所在行插入
8)vim的退出模式
:q 当用vim打开文件但没有对字符作任何操作时可直接退出
:q!当用vim打开文件并对字符作操作,放弃所有操作退出
:wq 保存退出
:wq!强行保存退出,对超级用户及文件所有人生效
9)vimtutor 提供vim的手册,键入“q”退出
10)标准输入、标准输出与标准错误
运行一个程序时,需要从某个位置读取输入信息,然后cpu处理,最后将输出显示到屏幕或文件
进程通过文件描述符的编号通道来获取输入并输出
编号 通道名称 描述 默认连接 用法
0 stdin 标准输入 键盘 仅读取
1 stdout 标准输出 显示屏 仅写入
2 stderr 标准错误 标准错误 仅写入
10)管理输出
输出重定向
会覆盖源文件内容
> 重定向正确输出
2> 重定向错误输出
&> 重定向所有输出
输出追加
不会覆盖源文件内容
>> 追加向正确输出
2>> 追加错误输出
&>> 追加所有输出
11)输入重定向
输入重定向
tr 'a-z''A-Z'<westos
格式化输入内容到文件
cat > westos <<EOF
HELLO
WORLD
EOF
12) 管道
符号:|
表示含义:将前一条命令的正确输出作为管道符后面命令的标准输入
stderr的输出不能通过管道
2>&1 可以把stderr转换成stdout
13) TEE 复制输出到指定位置
第四单元
1)什么是用户?
答:用户是操作者在系统中的身份,用户是系统最底层的安全机制的一部分,用户在系统中以
字符和文件的形式存在
2)用户存储文件
/etc/passwd>>>>>>>>>>>>>>>>zhaojuan:x:1002:8888::/home/zhaojuan:/bin/bash
用户信息文件,分解
用户名称
x
uid
gid
用户说明
用户加目录
用户默认开启的shell
/etc/group>>>>>>>>>>>>>>>>>xiyou:x:8889:zhaojuan
用户组信息文件
用户组名称
用户组密码
用户组 id
用户组成员
/etc/shadow>>>>>>>>>>>>>>>>wawa:!!:17566:0:99999:7:::
用户认证信息文件
用户名称
用户密码
密码已经使用时间
密码最短有效期
密码最长有效期
密码到期的警告
密码非活跃天数
密码到期日
3)useradd
用户新建用户
-u 指定用户的uid
-g 指定用户的gid
-G 指定用户的附加组
-c 指定用户的说明
-d 指定用户的家目录,默认为/home/username
-s 指定用户的shell类型
4)管理用户组
groupadd (建立用户组)
-g 指定组id
groupmod (修改用户组)
-g 修改组id
groupdel (删除用户组)
5)usermod(用于修改用户信息)
-l 修改用户名称
-u 修改用户的uid
-g 修改用户的gid
-aG 指定用户繁荣附加组
-c 修改用户的说明
-md 修改用户的家目录,默认为/home/username
-s 修改用户的shell类型
6)passwd
-l Lock,会将/etc/shadow第二栏最前面加上!使密码失效;
-u Unlock的意思!
-S 列出密码相关参数,亦即shadow文件内的大部分信息
-n 后面接天数,多久不可修改密码天数
-x 后面接天数,多久内必须要更动密码
-w 后面接天数,密码过期前的警告天数
-i 后面接“日期”,密码失效日期
7)chage
Last password change : Feb 04, 2018
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
-l 列出该账号的详细密码参数
-d 后面接日期,修改shadow 第三字段,格式YYYY-MM-DD
-E 后面接日期,修改shadow 第八字段,格式YYYY-MM-DD
-l 后面接天数,修改shadow 第七字段,(密码非活跃期)
-m 后面接天数,修改shadow 第四字段,(密码最短有效期)
-M 后面接天数,修改shadow 第五字段,(密码最长有效期)
-W 后面接天数,修改shadow 第六字段,(密码警告期)
8)用户权限下放sudo
sudo能把某些超级权限针对性下放,并且不需要普通用户知道root密码,所以sudo相对于权限
无限制性的sudo来说,还是比较安全的
sudo执行命令的流程是当前用户切换到root,然后以root身份执行命令,执行完成后,直接退
出到当前用户;而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权
9)用户权限下放sudo
vim /etc/sudoers 无语法检测
visudo 但有语法检测
文件内容编辑
99 ## Allow student to run useradd in my host
100 student desktop 126.example.com=(root) usr/sbin/useradd
注意:
怎么去查看主机名?
答:hostname
怎么查看命令useradd所在的文件?
which useradd
怎么实现第一次无密码执行命令?
NOPASSWD:/usr/sbin/useradd
sudo 命令
sudo useradd hello