美文网首页linux tools
day09-Linux运维-vim编辑器与显示文件内容的命令

day09-Linux运维-vim编辑器与显示文件内容的命令

作者: Linux丶晨星 | 来源:发表于2019-04-06 16:35 被阅读99次
    day08-vim编辑器及文件过滤命令.png

    vim编辑器:

    命令模式
    插入模式
    末行模式

    1.模式直接的切换

    命令---> 插入 a i O o
    插入---> 命令 Esc
    命令---> 末行 冒号

    大写O(插入当前行的上一行)
    小写o(插入当前行的下一行)

    2.命令模式下的操作:

    1.快速移动光标
    h 向左移动
    j 向下移动
    k 向上移动
    l 向右移动

    2.全文移动光标
    gg 或1G 移动到文本的行首
    shift g 或 G 移动到最后一行行首
    10G 或10gg 移动到文本的指定行首
    HOME 和 $ 移动光标到行首
    END 和 ^ 移动光标到行尾
    o 光标的下面处 插入一行 并进入编辑模式
    O 光标的上面 插入一行 并进入编辑模式
    2.删除
    x 删除单个字符
    cc 删除光标当前行并进入编辑模式
    C 删除光标所在行后的内容并进入编辑模式
    D 删除光标所在行后的内容
    d$ 删除到行尾
    d^ 删除到行首
    行数+D 删除当前行到选定行
    dG 删除光标所在行下面的所有内容
    3.复制/剪切/移动/粘贴
    yy 复制当前行
    p 粘贴到光标所在下面的行
    dd 剪切当前行
    dw 删除或剪切相同符号间的单词

    ①:1copy5 复制第一行到第五行下面 简写 1co5

    image.png

    ②:1move5 移动第一行到第五行 简写 mo

    image.png

    ③ctrl+v 先选中多少行 按大写I 插入 oldboy ESC ESC

    image.png
    image.png
    4.替换&撤销
    r 替换单个字符
    R 连续替换多个字符 按Esc返回命令模式
    u 撤销上一步
    :set nu 显示行号
    :set nonu 取消显示行号

    :%s#oldboy#root#g 把oldboy替换为root ,g是全局替换

    :%s#oldboy#root
    image.png
    批量操作
    ctrl+v+方向  选择区域内容 
    批量修改 I  插入内容后2次Esc修改成功
    批量删除 d/x
    
    5.echo:输出文本内容

    1.-n 不换行显示
    2 .> 输出重定向
    3.>> 追加输出重定向
    4.-e 激活特殊符号 \t \n

        [root@oldboy-59 ~]# echo {1..10}       //1到10的序列数
        1 2 3 4 5 6 7 8 9 10
        [root@oldboy-59 ~]# echo {01..10}      //01到10的序列数
        01 02 03 04 05 06 07 08 09 10
        [root@oldboy-59 ~]# echo {01..10..2}   //1到10每次+2
        01 03 05 07 09
        [root@oldboy-59 ~]# echo {01..10..3}   //1到10每次+3
        01 04 07 10
    
        创建目录oldboy/{01..10}/{www,blog,bbs}
    
        mkdir -p oldboy/{01..10}/{www,blog,bbs}
    
    seq 生成序列:seq -w 100
    
    6.cat:查看文件内容

    文件合并
    cat passwd test.txt >>all.txt
    -b 显示行号 不统计空白行
    -n 显示行号统计空白行
    cat >>test.txt<<EOF
    ...
    EOF 追加
    cat >test.txt<<EOF
    ...
    EOF 覆盖

    7.more:分页显示内容 more /etc/init.d/functions
    f 空格: 下一页
    b:      上一页
    q:      退出(查看到文件底部自动退出)
    
    8.less:分页显示内容 less /etc/init.d/functions
    f:   下一页
    b:   上一页
    q或Q: 退出(查看到文件底部,不退出)
    -N:   显示行号
    /要搜索的内容  搜索查找 n查找下一个  N 查找上一个
    
    9.head:显示文档头部 head test.txt -n+行数
    [root@oldboy-59 ~]# head test.txt -n1
    #! /bin/bash
    [root@oldboy-59 ~]# head -n1 test.txt
    #! /bin/bash
    
    10.tail:显示文档尾部
    -n:显示文档后几行
    -f:显示文档后几行(实时更新)
    tail -n5 test.txt 
    tail  -n1 test.txt -n2  以后面的优先
    tailf = tail -f  查看实时的日志情况
    
    image.png
    11.别名 alias 系统默认给rm mv cp 定义了别名
    [root@lcx ~]# alias
    alias cp='cp -i'
    alias egrep='egrep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias grep='grep --color=auto'
    alias l.='ls -d .* --color=auto'
    alias ll='ls -l --color=auto'
    alias ls='ls --color=auto'
    alias mv='mv -i'
    alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
    
    alias         查看已定义的别名
    alias rm='命令'  
    alias rm='echo command bny...'  可以使rm功能不能使用
    

    unalias+别名 取消别名


    image.png
    坑:  在alias添加别名后还要注释.bashrc里面的别名,不然重启后失效
    

    设置网卡名称为别名eth0

    alias eth0='vim /etc/sysconfig/network-scripts/ifcfg-eth0'
    
    [root@lcx ~]# alias eth0='vim /etc/sysconfig/network-scripts/ifcfg-eth0'
    [root@lcx ~]# eth0
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=none
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=eth0
    UUID=076a4e14-67bb-49ee-8778-687d86d3ba63
    DEVICE=eth0
    ONBOOT=yes
    IPADDR=10.0.0.201
    PREFIX=24
    GATEWAY=10.0.0.254
    DNS1=10.0.0.254
    DNS2=223.5.5.5
    IPV6_PRIVACY=no                                                          
    "/etc/sysconfig/network-scripts/ifcfg-eth0" 21L, 372C 5,1           All
    

    相关文章

      网友评论

        本文标题:day09-Linux运维-vim编辑器与显示文件内容的命令

        本文链接:https://www.haomeiwen.com/subject/rcjriqtx.html