vim命令

vim(visual editor improved)
大小写指令互补,大写指令=小写指令+Shift
数字代表重复指令若干次

最好先sudo su;进入superuse模式(否则文件第二次打开将不能正常退出,没有修改权限 No write since last change (add ! to override))
当vim异常退出后,将不能打开文件,会出现“.try.txt.swp的文件已存在”的报错:删除缓存的swp文件:rm -rf .try.txt.swp

vim try.txt  新建或者打开原有文件
cat try.txt   显示文件内容 (concatenate)

(默认打开vim为命令行模式)
编辑模式——Esc——>命令行模式
命令行模式——i /a/o——>(insert)编辑模式
命令行模式——:——>底线命令模式

底线命令模式:
:wq保存退出(write quit)    :q退出         :q!强制退出
:/word/正向搜索     :?word?反向搜索【可用regex】

:n1,n2s/word1/word2/g :在第 n1 与 n2 行之间寻找 word1 这个字符串,并将所有该字符串取代为 word2【不写n1,n2,默认为当前行。不写g,默认为只替换一次】
:1,$s/word1/word2/g:在第一行与最后一行间寻找并替换
:1,$s/word1/word2/gc:每次替换前confirm,请求用户确认

:w [filename]    将编辑的数据储存成另一个档案(类似另存新档) 
:r [filename]    将 filename 的档案内容加到游标所在行后面 
:n1,n2 w [filename]    将 n1 行到 n2 行的内容储存成 filename 文件(.代表当前行,
.+5代表当前行往下第五行,$表示最后一行)
设置-->:set
    + nu显示行号    + nonu取消 (number)
    + autoindent自动缩进
    + tabstop=n 设置Tab字宽
    + ruler显示光标行列
    + ignorecase 忽略regex中大小写字母的区别
    + mk 保存选项

vim -On file1 file2...   终端中打开 file1 和 file2 ,垂直分屏
vim -on file1 file2...   打开 file1 和 file2 ,水平分屏
分屏:上下(:sp) 左右(:vsp)vertical split
(在新分屏中打开新文件->:e ./t.txt)edit
切换分屏:Ctrl+w+hjkl (window)
Ctrl+W+ =   让所有的屏都有一样的高度;
:tabnew (filename) 打开新标签页

命令行模式:
向左下上右移动(hjkl)(多行移动:数字+hjkl)
Ctrl+f/b: PageDown/PageUp
Ctrl+d/u: PageDown/PageUp(移动半页)
数字+空格:光标向右移动若干字符
数字+Enter:向下移动若干行
H    光标移动到屏幕的最上方那一行的第一个字符 
M    光标移动到屏幕的中央那一行的第一个字符 
L    光标移动到屏幕的最下方那一行的第一个字符
0(Home):移动到该行开头
$(End):移动到该行末尾
定位最末行:G;最初行:gg(1G)
定位到第20行:20+G(or 20gg or :20)
*   在文件内搜索光标停留的单词,并跳转到下一处; 
#   在文件内搜索光标停留的单词,并跳转到上一处; 
(     移动到 上一句 的开始;    )移动到 下一句 的开始
{     移动到 上一段 的开始;    }移动到 下一段 的开始
g_    到本行最后一个不是 blank 字符的位置。 
fs    跳到下一个为s的字符。 
3fa   在当前行查找第三个出现的 a。
t,    到逗号前的第一个字符

拷贝光标当前行: yy; 拷贝向下的5行:5yy (yank)
从光标下一行处粘贴:p (paste);上一行粘贴:P
剪切当前行:dd;剪切向下的5行:5dd (delete)
rc   用 c 替换光标所指向的当前字符; 
nrc  用 c 替换光标所指向的前 n 个字符;
向右删除字符:x,向左:X    (连续删除:数字+x)
(y1G)d1G:(复制)删除光标到文档开头  (yG)dG:(复制)删除光标到文档末尾
(y0)d0:(复制)删除光标到行首   (y$)d$:(复制)删除光标到行尾
J    删除本行的回车符,并和下一行合并junction

在光标下面查找word:/word  【输入n 就是转入下一处next,N表示返回上一处】
在光标上面查找word:?word
撤销动作【某一命令,某一行输入】:u (undo)
重复动作:Ctrl+r (redo)

终端中vimdiff a.txt b.txt (or vim -d a.txt b.txt)
或 底线命令:diffsplit a.txt b.txt 比较文件差异
vim -b [file]:打开二进制文件(binary)    :%!xxd人性化显示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值