• linux vim 基本操作



    (一定要在英文输入法的状态下才有效)
    vi:实际上linux 上的 vi 不是真正的 vi,而是 vim;纯的 vi只在某些 unix 系统上还存在纯 的vi里面不支持退格键盘了,当按退格键盘以后,不是删除一个字符,而是切换到命令模式,所以后续的操作都受到影响,如果用纯的vi删除字符,要先切换到命令模式,然后定位到字符,再按下X才行

    vi 三种模式
    命令模式(command mode)默认打开时;
    任何时候,不管用户处于何种模式,按下 ECS 键盘即可时入命令模式。
    在该模式下,用户可以输入 vi 命令,管理自己的文档。此时键盘上的任何字符都被当作编辑命令来解释!用方向键盘移动光标进入文字编辑的定位
    0(数字)      光标移到行首
    h           光标左移一格
    l          光标右移一格
    j          光标下移一行
    k          光标上移一行
    PageDn     向下移动一页
    PageUp     向上移动一页
    dd         删除整行文字
    d+方向键盘 删除文字
    S          删除光标所在的行内容
    全选命令:ggVG
    gg:让光标移到行首行,在vim下有效,在vi中无效
    V:是进入Visual(可视化)模式
    G:光标称到最后一行
    接下就就可以进行其它的操作了:
    d 删除选中内容
    y 复制选中内容到 0 号寄存器
    "+y" 复制选中内容+寄存器,也就是系统的剪贴板,供其它程序使用


    输入模式(input mode)

    在命令模式下输入命令 i 或者 附加命令 a 或者打开命令 o
    ,或者修改命令 c,或者取代命令 r 或者 替换命令s都可以进入输入模式,在该模式下,用户输入的任何字符都被 vi 当作文件保护起来,并将其显示在屏幕上。在该模式下,按 esc 键盘可以进入命令模式

    末行模式( last line mode)

    末行模式主要是进行一些文字编辑辅助功能,比如字串搜索,替换,保存文件操作等,在命令模式下,用户按下":"即可进入该模式;
    :q   返回 shell 命令,但不保存

    :w  保存修改,但不退出 vi
    :q!  强制退出 vi 程序,不保存
    :wq  保存修改并退出程序
    :set nu 设置显示行号

    :set nonu 设置隐藏行号
     ===============
    在 vi 中不能使用方向键和退格键的问题
    在 vi 命令模式下使用  ": set nocompatible" 设置vi 不使用兼容模式

    进入 vi 命令
    vi filename 打开文件或新建文件,并将光标置于行首
    vi +n filename 打开文件,并将光标置于第 n 行首
    vi + filename 打开文件,并将光标置于最后一行首
    vi +/pattern file 打开文件,并将光标置于第一个与 pattern 匹配相处的行首

    定位到指定的行 直接输入数字即可
    搜索与替换命令
     /pattern  从光标开始处向文件尾搜索 pattern
     ?pattern  从光标开始处向文件首搜索 pattern
    输入 n或者 N,继续往前或往后查找相关的匹配内容

    如果要忽略大小写  /paternc      或者   ?paternc 即可

    复制与粘贴

    命令模式中:把光标话要复制的行中,按下 yy 即可把整行复制,然后把光标移动要粘贴的地方,然后按下 p 即可粘贴

    复制和粘贴指定的内容:
    命令模式下:
    把光标定位在要复制的内容开头或结尾,然后按下v 键,用键盘方向键盘选择相就的内容模块,然后按下 y 即复制成功,把光标定位在要粘贴的地方,按下 P 即可

    剪切和粘贴指定的内容:
    命令模式下:
    把光标定位在要剪切的内容开头或结尾,然后按下v 键,用键盘方向键盘选择相就的内容模块,然后按下 d 即剪切成功,把光标定位在要粘贴的地方,按下 P 即可

    撤消,反撤消

    命令模式下

    u:撤消,连续按,连续撤消,底下有提示

    ctrl+r:反撤消,连续按,连续反撤消

    用vi 清空所在的文件内容
    命令模式下:
    :1,$d

    撤消命令:
    在命令模式下 u

    恢复刚才的撤消动作:
    命令模式下:
    ctrl + r

    修改文件的编码格式:
    命令模式下:
    :set encoding=utf-8 (utf-8格式)
    :set termencoding=utf-8 (utf-8格式)
    :set fileencoding=utf-8 (utf-8格式)

    :set fileencoding=gb2312
    :set fileencoding=gbk

  • 相关阅读:
    oracle 函数
    Oracle 语句
    递归算法算出某个目录下所有目录和文件
    static
    递归算法
    JVM/JDK/JRE
    java跨平台原理
    .NET 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”
    JS 判断对象是否为空
    html网页打印A4样式
  • 原文地址:https://www.cnblogs.com/lin3615/p/3659743.html
Copyright © 2020-2023  润新知