Linux常用命令2

 

1、VIM文本编辑器

  • VI编辑器 - 概述

   - Visual Interface

   - 可视化接口

   - 类似Windows中的记事本

   - VI相对于记事本强大的不是一星半点

   - VI -> VIM

   - VIM相对于VI做了哪些提升

      - VIM支持多级撤销

      - VIM可以跨平台运行

      - VIM支持语法高亮

      - VIM支持图形界面

  • VI编辑器的操作模式

   - Command Model - 命令模式

    -> 通过键盘的Esc切换

    -> 命令模式常用指令  

      h 光标左移

      j 光标下移

      k 光标上移

      l 光标右移

      ctrl + f 向下翻页(front)

      ctrl + b 向上翻页(back)

      ctrl + d 向下翻半页(down)

      ctrl + u 向上翻半页(up)

      dd 删除光标所在行

      o 在光标所在行的下方插入一行并切换到输入模式

      yy 复制光标所在的行

      p 在光标所在行的下方粘贴

      P 在光标所在行的上方粘贴

    -> 调用命令格式

      vim + abc 编辑abc文件,光标定位到最后一行

      vim +3 abc 编辑abc文件,光标定位到第三行

      vim +/imooc abc   编辑abc文件,光标定位到imooc第一次出现的行,按n跳到下一次出现的位置

      vim aa bb cc 同时编辑aa、bb、cc三个文件,按:n跳到下一个文件,:N跳到上一个文件,:prev跳到上一个文件

   - Insert Mode - 输入模式

    -> 通过键盘 i 切换

   - Last Line Mode - 底行模式(尾行,末行)

    -> 通过键盘的Esc切换

    -> 底行模式常用指令

      :w 将文件的修改从内存写入硬盘中,也就是执行保存修改的过程

      :q 退出当前VIM打开的文件

      :! 强制执行

      :ls 列出当前编辑期打开所有文件

      :n 切换到后一个文件

      :N 切换到上一个文件

      :prev 切换到上一个文件

      :15 光标快速定位到第15行

      /xxx 光标位置开始,向后搜索xxx出现的第一个位置

      ?xxx 光标位置开始,向前搜索xxx出现的第一个位置

 

2、磁盘管理

  • df  [选项] 查看磁盘分区使用状况  

   -l 仅显示本地磁盘(默认)

   -a 显示所有文件系统的磁盘使用情况,包含比如/proc/

   -h 以1024进制计算最合适的单位显示磁盘容量

   -H 以1000进制计算最合适的单位显示磁盘容量

   -T 显示磁盘分区类型

   -t 显示指定类型文件系统的磁盘分区

   -x 不显示指定类型文件系统的磁盘分区

   

   

  • du  [选项]   统计磁盘上的文件大小

    -b 以byte为单位统计文件

    -k    以KB为单位统计文件

    -m 以MB为单位统计文件

    -h 按照1024进制以最适合的单位统计文件

    -H 按照1000进制以最适合的单位统计文件

    -s 指定统计目标

   

 

3、用户管理

  • 用户和用户组  

   -> 用户:使用操作系统的人

   -> 用户组:具有相同系统权限的一组用户

   -> /etc/group 存储当前系统中所有用户组信息

     - Group:           x   : 123  : abc,def,xyz

     - 组名称: 组密码占位符: 组编号: 组中用户名列表(为空,可能是只有一个用户且用户与组名一样)

       注:组编号:

        1、超级管理员root组号一定是0

        2、组号1-499是系统预留的组编号(预留给安装在这个系统的软件服务的)

        3、用户手动创建的组编号一般是从500开始的

        4、 组密码占位符都是x

    -> /etc/gshadow 存储当前系统中用户组的密码信息

     - Group:    *        :           : abc,def,xyz

     - 组名称: 组密码   : 组管理者 : 组中用户名列表(为空,可能是只有一个用户且用户与组名一样)

      注:组密码如果为空或者*或者!,表示组密码是空;组管理者为空,表示组内所有用户都能管理这个用户组。

   -> /etc/passwd 存储当前系统中所有用户的信息

     - user  :   x      : 123 :     456   :  xxxxxxxxx   :/home/user:/bin/bash

      用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户主目录:shell类型

      注:超级管理员用户编号是0

   -> /etc/shadow 存储当前系统中所有用户的密码信息

     - user  : vf;/Zu8sd  :::::

      用户名:   密码  :::::

  • 用户和用户组基本命令

   -> 用户组命令

       groupadd sexy  //添加一个sexy用户组

       groupmod -n market sexy  //修改sexy用户组的名称为market  

       groupmod -g 668 market  //修改market用户组的编号

       groupadd -g 888 boss  //创建用户组boss的同时指定用户组编号

       groupdel market  //删除用户组

   -> 用户命令

     useradd -g sexy sdf //创建用户sdf 并添加sexy用户组

     useradd -g sexy jzmb

     useradd -d /home/xxx imooc //创建用户imooc 指定用户目录为/home/xxx

     usermod -c dgdzmx sdf //给用户sdf添加注释

     usermod -l cls sdf //将用户sdf注销 并将所有内容给新用户cls

     usermod -d /home/cls cls //给用户指定目录

     usermod -g sexy imooc //改变用户imooc的所在组

     userdel jzmb //删除用户,不会删除用户家目录

     userdel -r jzmb //删除用户,连同家目录一起删除

    -> 补充

     没有指定情况下:会创建和用户名相同的用户组

     除了root用户,其他用户禁止登陆

     在/etc目录下只要有nologin文件就可以,因此如下:touch /etc/nologin

     解除此限制,删除nologin文件!

  • 用户和用户组进阶命令

      -> 用户进阶命令

     passwd cls  //修改用户cls的密码

     passwd -l cls  //锁定用户cls

     passwd -u cls  //解锁用户cls

     passwd -d cls  //清除密码

     useradd -g 主要组名 用户名 -G 附属组名,附属组名2  //建立用户时指定用户的主要组和附属组

   -> 用户组进阶命令

     gpasswd -a cls 组1,组2  //指定用户cls的附属组

     gpasswd -d cls 组1  //删除用户附属组

   -> 补充

     一个用户可以有一个主要组,多个附属组

     用户创建的文件会保存在主要组的目录;

     如果要保存在附属组目录下,需要暂时切换主要组:newgrp 附属组(此时需要输入组密码)

     更改组密码:gpasswd 组名

  • 用户管理其他命令  

    su username  //切换用户(用户名省略时进入root)

    whoami  //我是谁?显示当前登陆用户名

    id imooc  //显示指定用户信息,包括用户编号、用户名、主要组编号及名称,附属组列表

    groups imooc  //显示imooc用户所在的所有组,包括主要组和附属组

    chfn imooc  //设置用户资料,依次输入用户资料

    finger imooc  //显示用户详细资料

posted on 2018-05-28 00:34  daishengda  阅读(146)  评论(0编辑  收藏  举报