VI 编辑器

  • 快捷键
按键说明
h光标左移
j光标下移
k光标上移
l光标右移
都可加数字表示位移量,比如10h表示向前移动10个字符
ctrl + f向下移动一页
ctrl + b向上移动一页
ctrl + d向下移动半页
ctrl + u向上移动半页
+加号光标移动到非空格的下一行
-减号光标移动到非空格的上一行
n右移n个字符
0移动到本行最前面
$移动到本行最后面
H屏幕最上方那行的第一个字符
M屏幕中间那行的第一个字符
L屏幕最下方那行的第一个字符
G文件最后一行
nG文件第n行
gg文件第一行
N回车向下移动N行
/word向下查找word
?word向上查找word
:n1,n2s/word1/word2/g替换第n1行到n2行之间的word1为word2
:1,$s/word1/word2/g替换全部
:1,$s/word1/word2/gc替换全部,需要确认
x,Xx向后删除,X向前删除
nx删除n个字符
dd删除本行
ndd删除光标所在行向下的n行
d1G删除光标所在到第1行的数据
dG删除光标所在到最后1行的数据
d$删除光标所在到该行的最后一个字符
d0删除光标所在到该行的第一个字符
yy复制一行
nyy
y1G
yG
y0
y$
p,P粘贴
J将光标所在行和下一行的数据结合成同一行
c重复删除多个数据,例如10cj表示向下删除10行
u复原前一个操作
ctrl r重做上一个操作
.重复前一个操作
i,Ii为从光标所在开始插入,I为从本行第一个非空格出开始插入
a,Aa为从光标所在的下一个字符开始插入,A为从光标所在的最后一个字符开始插入
o,Oo为下一行开始插入,O为上一行开始插入
r,Rr只替换光标所在的那个字符一次;R会一直替换,直到按下ESC
:w
:w!
:q
:q!
:wq
:wq!
ZZ
:w [filename]另存
:r [filename]将filename文件读入光标所在行
:n1,n2,w [filename]将n1到n2行保存成文件filename
! command暂时离开vi到命令行模式执行command
:set nu显示行号
:set nonu取消行号
  • VIM块选
按键说明
v字符选择,将光标经过的地方反白
V行选择,将光标经过的行反白
ctrl v块选择
y复制
d删除
  • 多文件编辑
    vim file1 file2 file3…
按键说明
:n编辑下一个文件
:N编辑上一个文件
:files列出目前打开的所有文件
  • 多窗口功能
    在命令行模式输入:sp{filename}即可以在新的分割窗口打开文件filename,filename为空,表示在新的分割窗口打开当前文件
按键说明
:sp{filename}打开新窗口
ctrl w j(或向下箭头)同时按住ctrl和w,松开后再按j,移动到下一个窗口
ctrl w k(或向上箭头)上一个窗口
ctrl w q关闭当前窗口
  • 环境参数设置
命令功能
:set nu显示行号
:set nonu取消行号
:set hlsearch高亮查找到的单词
:set nohlsearch
:set autoindent自动缩排
:set noautoindene
:set backup自动保存备份
:set ruler显示右下角状态栏
:set showmode显示左下角状态栏
:set backspace=(012)表示编辑模式下可以删除的字符,2表示任何字符都可以删除,0或1表示仅能删除新输入的字符
:set all显示所有设置
:set显示与系统默认不一样的设置
:syntax on语法高亮
:syntax off
:set bg=dark
:set bg=light设置颜色色调
  • 其它命令
dos2UNIX [-kn] file [newfile]
UNIX2dos [-kn] file [newfile]
//换行符转换
//-k 保留文件的mtime
//-n 保留旧文件,将转换内容输出到新文件

iconv --list
iconv -f oldcode -t newcode filename [-o newfile]
//编码转换
  • 配置文件
#    ~/.vimrc
set autoindent
set hlsearch
set ruler
set showmode
syntax on
set nu

#记住上一次退出时的位置
if has("autocmd")
   au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
       \| exe "normal g'\"" | endif
endif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值