linux基础知识2

1. vi 编辑器
   :set number    # 显示行号
1.1 移动
   gg             # 文件首行 
   G              # 文件末行
   H              # 屏幕首行
   L              # 屏幕末行
   b              # 前一个单词首字母
   w              # 后一个单词首字母
   e              # 后一个单词末字母
   k              # 上
   l              # 右
   j              # 下
   h              # 左
   n              # 查找下一个
   N              # 查找上一个
   Ctrl + f       # 向下翻页
   Ctrl + b       # 向上翻页
   Ctrl + d       # 向下翻半页
   Ctrl + u       # 向上翻半页
1.2 输入模式(insert 模式)
   i              # 光标前一个位置输入文字
   a              # 光标后一个位置输入文字
   I              # 行首插入
   A              # 行尾插入
   O              # 上方插入新的一行
   o              # 下方插入新的一行
1.3 命令模式
1.3.1 选择
   v              # 进入/退出选择模式
1.3.2 复制/粘贴
   y0             # 复制到行首
   y$             # 复制到行尾
   yy             # 复制当前行
   nyy            # 连续复制 n 行
   p              # 光标所在位置 后面/下方 粘贴
   P              # 光标所在位置 前面/上方 粘贴
1.3.3 删除
   x              # 删除当前字符
   d0             # 删除至行首
   d$             # 删除至行尾
   dd             # 删除当前行
   ndd            # 删除当前行开始的连续 n 行
1.3.4 替换
   r              # 替换当前字符
   :s/old_string/new_string      # 替换当前行第一个
   :s/old_string/new_string/g    # 替换当前行所有
   :n,$s/old_string/new_string   # 替换第 n 行至文件末行中每一行的第一个
   :n,$s/old_string/new_string/g # 替换第 n 行至文件末行中每一行的所有
   :%s/old_string/new_string     # 替换每一行的第一个
   :%s/old_string/new_string/g   # 替换每一行的所有
1.3.5 撤销
   u              # 撤销上一个操作
1.3.6 底行模式常用命令
   :w             # 保存文件
   :q             # 退出文件
   :!             # 强制执行命令(例如 :q! )
   :ls            # 列出当前打开的所有文件
   :n  或者 :next # 切换到下一个文件
   :N  或者 :prev # 切换到上一个文件
   :10            # 光标移动到第10行
   /str           # 向后搜索
   ?str           # 向前搜索
1.4 打开文件
   vi 文件名称          # 打开文件,光标置于首行或上次光标所在位置
   vi + 文件名称        # 打开文件,光标置于最后一行
   vi +n 文件名称       # 打开文件,光标置于第n行
   vi +/字符串 文件名称 # 打开文件,光标置于字符串第一次出现的所在行的行首
   vi 文件1 文件2       # 同时打开多个文件
   
2. 磁盘管理
2.1 查看磁盘分区使用情况
   df [选项]
   # -l 仅显示本地磁盘(默认)
   # -a 显示所有文件系统的磁盘使用情况
   # -h 以1024进制计算最合适的单位并显示磁盘容量
   # -H 以1000进制计算最合适的单位并显示磁盘容量
   # -T 显示磁盘分区类型
   # -t 显示指定类型文件系统的磁盘分区情况
   # -x 不显示指定类型文件系统的磁盘分区情况
   示例:
   df -hT       # 显示所有本地磁盘的使用情况
   df -hT /home # 显示/home文件夹所在分区的磁盘使用情况
2.2 统计磁盘上文件的大小
   du [选项]
   # -b 以 byte为单位统计文件大小
   # -k 以 KB  为单位统计文件大小
   # -m 以 MB  为单位统计文件大小
   # -h 以1024进制计算最合适的单位并显示
   # -H 以1000进制计算最合适的单位并显示
   # -s 指定统计目标
   # -d 最大深度( max-depth )
   示例:
   du -h -s /home   # 查看/home文件夹的大小
   du -h -d 1 /home # 查看/home文件夹及其子文件夹的大小
2.3 分区模式
   MBR 分区模式  # 主分区最多4个,单个分区最大2TB(fdisk命令创建的分区就是MBR分区模式)
   GPT 分区模式  # 主分区最多128个,单个分区最大18EB
                 # 1EB = 1024PB, 1PB = 1024TB, 1TB = 1024GB
                 # 缺点:GPT的主分区中,不适合安装x86架构的系统
2.4 GPT 分区
   linux-创建-GPT-分区
   https://code.csdn.net/snippets/619213/master/linux-创建-GPT-分区/raw
   相关链接:  
   https://code.csdn.net/snippets/592005/master/linux-挂载新硬盘及分区设置/raw  
   https://code.csdn.net/snippets/593828/master/linux-将多个硬盘合并到一个挂载点下/raw
2.5 swap 分区
   linux-创建-swap-分区
   https://code.csdn.net/snippets/619235/master/linux-创建-swap-分区/raw

3. 用户管理
3.1 用户组
   /etc/group   # 用户组的配置文件
                # 组名称:组密码占位符:组编号:组中用户列表
                  root组的id固定是0
                  1~499是系统预留的组id,是给安装在系统中的软件使用的
                  用户手动创建的用户组,编号是从500开始的
   /etc/gshadow # 存储当前系统中用户组的密码信息
                # 组名称:组密码:组管理者:组中用户列表
   示例:
   groupadd -g 500 group1    # 创建一个gid为500的用户组
   groupmod -n group2 group1 # 将用户组group1修改为group2
   groupmod -g 501 group2    # 将用户组group2的gid修改为501
   groupdel group2           # 删除用户组group2
3.2 用户
   /etc/passwd  # 存储系统中所有用户的信息
                # 用户名:密码占位符:用户编号:组编号:注释信息:用户主目录:用户shell类型
   /etc/shadow  # 存储系统中所有用户的密码信息
   示例:
   useradd -d /home/user1 -s /bin/bash -g users -m user1 # 创建用户
   usermod -u 500 user1                                  # 修改用户id
   usermod -l user2 -d /home/user2 -m user1              # 修改用户名称
   usermod -G group1,group2 user2                        # 给用户添加附属组
   gpasswd -a user2 group1                               # 给用户添加附属组
   gpasswd -d user2 group1                               # 删除用户的附属组
   userdel -r user1                                      # 删除用户
   
   # 禁止普通用户登录(当/etc/nologin这个文件存在时,普通用户被禁止登录)
   touch /etc/nologin
   
   passwd             # 修改当前用户的密码
   passwd user1       # 修改指定用户的密码
   passwd -l user1    # 锁定用户
   passwd -u user1    # 解锁用户
   newgrp group1      # 切换用户组
   su - userName      # 切换登录用户
   whoami             # 查询当前登录用户
   id                 # 查询当前用户详细信息(包含当前正使用的用户组)
   groups             # 查询当前用户的所有组
   id userName        # 查询指定用户详细信息
   groups userName    # 查询指定用户的所有组
   

视频链接

http://www.imooc.com/learn/111

你可能感兴趣的:(linux)