linux中vim的基础操作以及高级设置

    科技2022-08-09  97

    vim的高级设置

    建立文件的方式一.vim的三种模式vim模式:二.vim工作的基本配置三.搜索四.vim中的字符管理复制删除剪切粘贴恢复撤销五.vim可视化模式六.批量修改字符七.vim的分屏功能八.vim中快速定位光标九.vim插入模式进入方式十.vim退出模式

    建立文件的方式

    touch file gedit file vim file > file

    一.vim的三种模式

    vim是全球两大流行文本编辑器之一 vim file ##直接编辑文件内容

    vim 直接 #:wq file ##文件不存在时 #:wq! file ##文件存在

    vim模式:

    命令模式(浏览模式)此模式下只能对文件内容浏览;对vim的工作方式进行设定;不能修改文件内容插入模式对文件内容进行修改的模式退出模式结束vim程序使用到的指令

    vim 命令查看帮助 1vimtutor##vim手册 2vim 命令打开vim程序在程序输入 :help

    二.vim工作的基本配置

    在命令模式下如何更改vim的工作方式 各种设置在百度查询 临时设定 1

    :set 设定 :set nu #显示行号 :set nonu #取消行号显示 :set mouse=a #鼠标可用 :set cursorline #显示光标所在行的行线

    set cursoline

    2 在用户的家目录设置 vim ~/.vimrc set nu

    [westos@lzy Desktop]$ vim ~/.vimrc [westos@lzy Desktop]$ cat ~/.vimrc set nu

    对root用户不生效

    永久设定方式 vim /etc/vimrc ##vim配置文件 set nu

    全局设定:对所有用户都生效

    三.搜索

    /关键字高亮显示关键字:noh取消高亮显示n向下匹配关键字N向上匹配关键字

    浏览模式

    四.vim中的字符管理

    复制

    y复制快捷键yl复制一个字母y3l复制三个字母yw复制一个单词y3w复制三个单词yy复制一行y3y复制三行

    删除

    d删除的快捷键dl/x删除一个字母d3l删除三个字母dw删除一个单词d3w删除3个单词dd删除一行d3d删除3行

    剪切

    c剪切cl剪切1个字母c3l剪切3个字母cw剪切1个单词c3w剪切3个单词cc剪切1整行c3c剪切从此行开始的后三行

    c3按上键,剪切从此行开始的前三行

    "注意: 剪切操作完毕后会进入到插入模式" " 如果要粘贴需要按<ESC>退出插入模式按<P>"

    粘贴

    p ##在命令模式下p表示粘贴

    恢复

    u ##恢复 undo

    撤销

    <ctrl>+<R> ##撤销 redo

    五.vim可视化模式

    <ctrl>+<v> ##进入可视化模式<ESC>退出可视化模式

    批量添加字符:

    1.<ctrl>+<v> 进入可视化模式, 选中插入字符所在列

    2.按大写<I>进入插入模式 3.插入要写入的字符

    4.<ESC>退出插入模式 批量添加完成

    六.批量修改字符

    %s/原字符/替换字符/ 默认只替换每一行的第一个匹配到的原字符

    :%s/原字符/替换字符/g##%全文的行,g全文的列

    1,5s/:/##/g ##1,5 1-5行 /adm/,/sync/s/:/##/g #/adm/,/sync/ adm字符到sync字符之间的,其余会高亮显示

    七.vim的分屏功能

    同步分屏

    <ctrl> + <w> <s>上下分屏<ctrl> + <w> <v>左右分屏<ctrl> + <w> <上|下|左|右>光标移动<ctrl> + <w> <c>取消分屏

    不同不分屏 1 已经打开一个文件 :sp 文件名称

    2 vim -o file1 file2 vim -p file1 file2 见上篇博客

    八.vim中快速定位光标

    gg光标移动到文件第一行行首G光标移动到最后一行:数字光标移动到指定行

    九.vim插入模式进入方式

    i光标所在位置插入I光标所在行行首插入A光标所在行的行尾插入a光标所在字符的下一个字符插入o光标所在行的下一行插入O光标所在行的上一行插入s删除光标所在字符插入S删除光标所在行插入

    十.vim退出模式

    :wq保存退出:wq!强行保存退出只有文件是自己的或者root用户可用:q退出未对文件内容修改:q!强制退出不保存

    test 查找一个字符串 .在文件/usr/share/xml/iso-codes/iso_639_3.xml中查找所有包含ng的行 . 将找出的行按照先后顺序复制到/root/list中 . /root/list文件中无意义的空格删掉 . 其中的所有行的内容必须是源文件的原始的副本

    ll[root@lzy ~]# grep ng /usr/share/xml/iso-codes/iso_639_3.xml > /root/list [root@lzy ~]# vim /root/list

    :%s/^ *//g 删除空行 %s/^\ *//g 删除开头的所有空格

    :%s/^I//g 删除tab键带来的空行 /crtl+shift + i (tab ^I)

    Processed: 0.020, SQL: 8