vim常用命令

输入模式下

Shift+字母:大写
fn + 方向键:翻页
自动补全:ctrl + n

\p<  插入一个include,并把光标置于<>中间
\im  插入主函数
\ip  插入printf,并自动添加\n,且把光标置于双引号中间
dw  删除一个单词(配合b:将光标置于所在单词的首部)
yw  复制一个单词(配合p:粘贴)
\rr  运行程序
\rc  保存并编译程序(会生成二进制文件

:set number 显示行号
:set nonu   取消行号

移动光标的方法

hjkl:左下上右
H/M/L:移动到屏幕首行/中间/尾行
G:整个文档最后一行
n + G :  移动到这个档案的第 n 行。
gg/1G:整个文档第1行
n + j / n + 回车:向下移动 n 行
n + 空格:向右移动 n 行
[Ctrl] + [f] 向下翻页
[Ctrl] + [d] 向下半页
[Ctrl] + [b] 向上翻页
[Ctrl] + [u]    向上半页
+   光标移动到非空格符的下一行
-   光标移动到非空格符的上一行
    数字0/$:移动到本行最前/最后

搜索替换

/word:向下搜索
?word:向上搜索
n:重复前一个搜索动作
N:反向n
:n1,n2s/word1/word2/g   n1与n2行之间搜素并替换
    如:
    :100,200s/vbird/VBIRD/g
    :1,$s/word1/word2/g 或 :%s/word1/word2/g 第一行到最后一行
    :1,$s/word1/word2/gc 或 :%s/word1/word2/gc 替换前确认confirm

删除、复制粘贴

x,X 向后向前删除
  nx,nX 连续删除n个字符
p/P 粘贴到之后/之前
dd 剪切整行
    ndd 向下剪切n行
    d1G 剪切光标到文档首行
    dG 剪切光标到文档尾行
    d0  剪切光标到该行开头
    d$  剪切光标到该行结尾
yy  复制游标所在的那一行(常用)
    nyy
    y1G
    yG
    y0
    y$
J   所在行 与 下一行 合并
c   重复删除多个数据,例如向下删除 10 行,[ 10cj ]
u   复原前一个动作。(常用)
[Ctrl]+r    重做上一个动作。(常用)
.   重复前一个动作

进入输入或取代的编辑模式

I 所在行的第一个非空格符处开始输入
a 下一个字符处开始输入』,
A 所在行的最后一个字符处开始输入
o 为在目前光标所在的下一行处输入新的一行;
O 为在目前光标所在的上一行处输入新的一行!

r, InternalServerErrorResponse  进入取代模式(Replace mode):
    r 只会取代光标所在的那一个字符一次;
    R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)

指令行的储存、离开等指令

:w! 只读属性时,强制保存(得有权限)
:q! 强制退出不保存
ZZ  = :wq
ZQ  = :q!
:w [filename]   另存为
    :n1,n2 w [filename] 指定n1到n2行
:r [filename]   插入文档内容
:! command  暂时离开 vi 到指令行模式下执行 command 的显示结果!
    例如 『:! ls /home』即可在 vi 当中察看 /home 底下以 ls 输出的档案信息!

原文链接:https://zxalive.com/post/linux/


标题:vim常用命令
作者:Curry
地址:http://bolo.it-cxy.top/articles/2024/11/16/1731763250151.html

    评论
    0 评论
avatar

取消