Linux下的vim使用

ubuntu自带的vim是不完整输入如下命令下载一个

[sudo] apt-get install vim


vi的使用模式:

一般模式

命令行输入vi进入的就是一般模式,可以使用【上下左右】移动光标,使用【删除字符】【删除整行】处理文件内容,使用【复制黏贴】处理文件

移动光标

h或左键光标向左移动一个字符
j或下键光标向下移动一个字符,30j或30下键可以跳30行
k或上键光标向上移动一个字符
l(L)或右键光标向右移动一个字符
ctrl + f屏幕向下移动一页,同page down
ctrl + b屏幕向上移动一页,同page up
ctrl + d屏幕向下移动半页
ctrl + u屏幕向上移动半页
+光标移动到非空格符的下一列
-光标移动到非空格符的上一列
n<space>n表示数字,按下数字后按空格,光标会向右移动n个字符
0或home键移动到这一行的最前面字符
$或end键移动到这一行的最后字符处
H光标移动到屏幕最上方一行的第一个字符
M光标移动到这个屏幕中间行的第一个字符
L光标移动到这个屏幕最下行的第一个字符
G移动到文件的最后一行
nGn为数字,移动到文件的第n行
gg移动到这个文件的第一行
n + 回车n为数字,光标向下移动n行

查找与替换

/word向光标之下查找word字符串
?word向光标之上查找word字符串
n是n按键,重复前一个查找的动作
N大写N按键,反向前进前一个查找动作
:n1,n2s/word1/word2/gn1,n2为数字,s是必须打上去的。
在n1与n2行之间查找word1字符串,
并将该字符串替换为word2
:1,$s/word1/word2/g


1:,$s/word1/word2/gc
第一行到最后一行查找word1字符串,
并替换为word2


第一行到最后一行查找word1字符串,
并替换为word2,并需要用户确认

删除复制粘贴

x,Xx为向后删除一个字符相当于del键,
X为向前删除一个字符相当于backspace
nx
dd
n为数字,连续向后删除n个字符
删除光标所在那一行
nddn位数字,删除光标所在乡下n列
d1G删除光标所在到第一行所有数据
dG
d$
删除光标所在到最后一行所有数据
删除光标所在,到该行最后一个字符
d0数字0,删除光标所在处到该行第一个字符
yy复制光标所在行
y1G复制光标所在列到第一列的所有数据
yG复制光标所在列
nyyn为数字,复制光标所在的乡下n列
y0复制光标所在字符到该行行首的所有字符
y$复制光标所在字符到该行行尾的所有字符
p,Pp为将已复制的数据在光标下一行贴上,P则为贴在光标上一行
J将光标所在列与下一列的数据结合成同一列
c重复删除多个数据,如10cj
u复原之前一个动作
ctrl + r重复上一个动作
.重复前一个动作

区块模式

v字符选择,会将光标经过的地方反白选择
V行选择,会将光标经过的行反白选择
ctrl+v区块选择,用长方形方式选择
y反白地方复制
d反白地方删除


编辑模式

在一般模式中按【i,I,o,O,a,A,r,R】等任意一个字母就会进入编辑模式,此时指令列会出现insert或replace字样,按下【esc】按键可以退出编辑模式


i,I







a,A
进入插入模式
i为从光标所在处插入
I为光标所在行第一个非空字符串处插入





进入插入模式
a为从光标所在的下一个字符开始插入
A为从光标坐在的最后一个字符开始插入
o,O进入插入模式
o为光标所在的下一行插入新一行
O光标所在处的上一行插入新一行
r,R
进入取代模式Replace mode
r只会取代光标所在的那一个字符一次
R会一直取代光标所在文字,直到按下ESC为止
Esc退出编辑模式,回到一般模式中


指令列命令模式

在一般模式红中输入【:,/,?】三个字符的任意一个都可以将光标移到指令列,在这里可以读取、保存、退出程序

指令列的保存离开等

:w将编辑的数据写入硬盘文件
:w!
:q
:q!
文件为只读时,强制写入文件
离开vi
离开不保存文件,!在vi中有强制的意思
:wq
:wq!
保存后离开
强制保存后离开
ZZ


:w  [filename]
大写Z,若文件没有变动,不保存离开
若文件被改动,保存后离开

将编辑的数据保存成另一个文件(另存为)
:r  [filename]读入另一个文档的数据,将filename文件内容添加到光标后面
:n1,n2  w  [filename]将n1到n2的内容存到文件中
:!  command暂时离开vi到指令模式下执行command显示结果
例:【:!  ls  /home】

多文档编辑

:n编辑下一个文档
:N编辑上一个文档
:files列出目前这个vim打开的所有文件

多窗口功能

:sp  [filename]开启新窗口
加filename表示在新窗口创建新文件
否则表示两窗口为同一个文件内容
先ctrl+w再按j
先ctrl+w再按下键
光标移动到下方窗口
先ctrl+w再k
先ctrl+w再按上键
光标移动到上面窗口
先ctrl+w再按q键离开当前光标所在窗口




vim环境的变更

:set  nu
:set nonu
显示行号
取消显示行号
:set hlsearch
:set nohlsearch

:set autoindent
:set noautoindent
hlsearch  high light search,是否将搜寻的字符串反白,默认hlsearch


是否自动缩进
:set  backup是否自动保存备份。默认nobackup,设定后会多出一个filename~文件
:set  ruler是否显示状态栏说明
:set  showmode是否要显示INSERT之类在状态栏左下角,建议打开
:set  backspace=(012)backspace删除字符设定
为2时可以删除任意值;
0或1时,仅可删除刚输入的字符无法删除原有的文字
:set  all显示当前的所有环境参数设定
:set显示与系统默认值不同的设定参数
:syntax on
:syntax off
依据程序相关语法显示不同颜色
:set  bg=dark
:set  bg=light
显示不同的颜色色调


vim的暂存文件

vim会在被编辑文件的目录下建立.filename.swp文件

多人编辑文件时

       o键,open  read-only    以只读方式查看暂存文件

vim崩溃时

       r键,recover   将暂存文件救回来,暂存文件需要手动删除

       d键,delete    将暂存文件删除

存在暂存文件时

       o键,open  read-only    以只读方式查看暂存文件

       e键,Edit anyway    正常方式打开编辑文件

       r键,recover   将暂存文件救回来,暂存文件需要手动删除

       d键,delete    将暂存文件删除

       q键,quit    离开vim

       a键,abort    忽略编辑,退出vim



转换编码iconv

iconv  --list

iconv  -f  原编码  -t  新编码  filename  [-o  newfile]


--list:  列出iconv支持的语言编码

-f:  from,原本的编码格式

-t:  to,新编码格式

-o  file:  保留原本的文件,建立新文件













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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值