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







































    




















全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务