启动vim编辑器: vim 文件名
1)命令模式
(1)进入命令模式
(2)在命令模式下配置vim的工作方式 (该配置只在当前打开的vim中有效)
配置永久生效的vim: vim /etc/vimrc
显示行号: :set nu
取消行号: :set nonu
添加鼠标选择: :set mouse=a
行线显示: :set cursorline
命令模式下关键字的搜索:
命令: /关键字
n : 向下匹配
N: 向前匹配
复制粘贴:
复制一行: yy
复制 n 行:yny
粘贴: p
删除:
删除一行: dd
删除 n 行: dnd
剪切:
剪切一行: cc
剪切 n 行:cnc
剪切完: esc ----> p (粘贴)
vim可视化模式:在可视化模式下可批量处理字符
(1) 进入可视化模式: ctrl + v
(2)上,下键选中要处理的字符:
(3) 按 “ i ” 进入编辑模式,可对选中的字符进行替换,插入等操作
替换所有选中的字符: :%s/原有字符/要替换的字符/g
替换选中字符的每一行的第一个原有字符: :%s/原有字符/替换字符
命令模式下的光标移动:
精确移动: :行号
移动到首行: gg
移动到末行: G
2)插入模式:
i 光标所在位置插入
L 光标所在行行首
a 光标所在字符的下一个位置
A 光标所在行行尾
o 光标所在行下一行
O 光标所在行上一行
s 删除光标所在字符插入
S 删除光标所在行插入
3)退出模式:
:q 当用 vim 打开文件但没有对字符作任何操作时可直接退出
:q! 当用 vim 打开文件并对字符作操作,放弃所有操作退出
:wq 保存退出
:wq! 强行保存退出,对超级用户及文件所有人生效
详细参考vim手册: vimtutor
1) 输入重定向: 内容 < 文件
tr 'a-z' 'A-Z' < file : 将file内容转换为大写显示出来
2)输出重定向:
(1) 会覆盖源文件内容:
> : 重定向正确输出
2>: 重定向错误输出
&>: 重定向所有输出
(2)不会覆盖源文件内容,而是追加到源文件的后面:
>> : 重定向正确输出
2>>: 重定向错误输出
&>>: 重定向所有输出
用户是操作者在系统中的身份
用户是系统最底层的安全机制的一部分
用户在系统中以字符和文件的形式存在
1) /etc/passwd 用户信息文件
用户名称
x
uid
gid
用户说明
用户加目录
用户默认开启的 shell2)/etc/group 用户组信息文件
用户组名称
用户组密码
用户组 id
用户组成员3) /etc/shadow 用户认证信息文件
用户名称
用户密码
密码已经使用时间
密码最短有效期
密码最长有效期
密码到期前警告
密码非活跃天数
密码到期日
参数: -u 指定用户的 uid
-g 指定用户的 gid
-G 指定用户的附加组
-c 指定用户的说明
-d 指定用户的家目录 , 默认为 /home/username
-s 指定用户的 shell 类型
参数 : 用于修改用户信息
-l 修改用户名称
-u 修改用户的 uid
-g 修改用户的 gid
-aG 指定用户的附加组
-c 修改用户的说明
-md 修改用户的家目录 , 默认为 /home/username
-s 修改用户的 shell 类型
删除之前:
只删除用户名,但该用户文件还存在,只是没有了所属用户: userdel 用户名
删除之后:
将用户文件也删除: rm -rf 用户名
groupadd -g 建立用户组 指定组 id
groupdel 删除用户组 (必须先删除该组中的所有用户,才能删除这个用户组)
锁密码:
解锁:
参数:
-l: Lock, 会将 /etc/shadow 第二栏最前面加上 ! 使密码失效
-u: Unlock 的意思 !
-S: 列出密码相关参数 , 亦即 shadow 文件内的大部分信息。
-n: 后面接天数 , 多久不可修改密码天数
-x: 后面接天数 , 多久内必须要更动密码
-w:后面接天数 , 密码过期前的警告天数
-i: 后面接“日期” , 密码失效日期
密码的八个字段:
参数:
-l : 列出该帐号的详细密码参数 ;
-d : 后面接日期 , 修改 shadow 第三字段 , 格式 YYYY-MM-DD
-E : 后面接日期 , 修改 shadow 第八字段 , 格式 YYYY-MM-DD
-I : 后面接天数 , 修改 shadow 第七字段 ( 密码非活跃期 )
-m : 后面接天数 , 修改 shadow 第四字段 ( 密码最短有效期 )
-M : 后面接天数 , 修改 shadow 第五字段 ( 密码最长有效期 )
-W : 后面接天数 , 修改 shadow 第六字段 ( 密码警告期 )
sudo 能把某些超级权限针对性的下放 , 并且不需要普通用户知道 root 密码 , 所以 sudo 相对于权限无限制性的 su 来说还是比较安全的,sudo 执行命令的流程是当前用户切换到 root, 然后以 root 身份执行命令 , 执行完成后 , 直接退回到当前用户 ; 而这些的前提是要通过 sudo 的配置文件 /etc/sudoers 来进行授权
进入配置文件 /etc/sudoers 配置 :
1) vim /etc/sudoers : 修改了文件,保存时不会进行语法检测
2) visudo: 修改了文件,保存时会进行语法检测
进入编辑模式,给用户进行授权:
进行执行一些权限,不用切换到超户执行:
查看文件属性 ( 详细信息 ): ls -l
查看文件属性 ( 详细信息 ): ls -ld
Linux 是个多用户多任务的系统 , 常常会有多人同时使用同一主机来进行工作 , 为了考虑每个人的隐私权以及每个人喜好的工作环境 , 对用户进行分类
文件拥有者 (user)
文件所属组 (group)
其他人 (other)
参数:
chown 用户名 文件
chgrp 组名称 文件
chown -R 用户名 目录
chgrp -R 组名称 目录
chown 用户名 : 组名称 文件 | 目录
user: 第 2~4 个字符代表文件所有人的权限 ;
group: 第 5~7 个字符代表文件所属组的权限 ;
others: 第 8~12 个字符代表其他人的权限
1)根据字符方式修改文件权限 : chmod <+|-|=>
2)通过数字方式修改 : chmod 数字 目标
固定值: r:4 w:2 x:1
排列组合:
7:rwx 6:rw- 5:r-x 4:r--
3:-wx 2:-w- 1:--x 0:---
当你创建一个新的文件或目录时 , 该文件或目录有默认权限umask 的分数指的是 该默认值需要减掉的权限
在默认权限的属性上 , 目录与文件是不一样的,文件的最大权限为 666, 目录的最大权限为 777
超户的umask : 0022
普通用户的umask: 0002
修改umask的值:
umask 022 // 临时修改 umask 值,只在本次执行有效
vim /etc/bashrc // 永久修改 bash 里创建文件的 umask 值
vim /etc/profile // 永久修改每个用户创建文件的 umask 值
注意 : 想要永久性的修改 umask 值 , 一定要重新读取两个配置文件后 , 才能生效