vim文本编辑详解

    行编辑器 sed
    全屏编辑 nano  vi
vim中

    +#  进入第#行
    +/PATTERN 直接处于第一个PATTERN 行首
例如 vim +  /path

模式转换
    i光标前面插入
    a光标后面
    o光标下面打开新行
    I光标行首输入
    A光标行尾输入
    O光标插入上一行
    c
    C
    ZZ 保存退出

hjkl 四个方向转换
w  下一个单词词首
e  当前或下一个单词词尾    
b  。。。词首


行首行尾跳转
    ^第一个非空白行首
    0到行首
    $到行尾
    #G 到#尾部
    G 最后一行
    1G  gg到第一行
      ()  {}  句子  段落间移动

x删除光标处字符
#x删除光标处第#个字符
xp交换光标位置与后面字符的位置

删除命令
d删除命令
    d$
    d^
    d0

    dw
    de
    db

    #COMMAND 上面的三个

删除整行 dd


#dd  删除#行


黏贴命令
    p黏贴到下一行
    P黏贴到上一行
复制命令y

y复制
    y$  复制到行尾
    y0
    y^

    ye
    yw
    yd

    #yy 复制多少行

c修改命令
    等于 y  d


r 替换命令

可视化模式

在光表示处 
v  圈定部分
V  圈定整行

然后 d c y 

撤销命令  u  

#u 撤销次数


撤销此前的撤销 
 Ctrl+r


复制前一个编辑操作 .

翻屏操作
 Ctrl+f 尾部翻
 Ctrl+b 首部翻
     d 尾部半屏
     u 首部半屏

vim中的末行命令
    内建的命令行接口

(1)地址定界 :
    #  具体第#行
    #,#  第#到第#行
           #,+#  当前行附加#行
例子  :1,+3 第一行再加3行 一共四行

    .表示当前行
    $表示最后一行
        .,$-1  当前行到最后一行的上一行
    %全文  相当于 1,$

    /pattern1/,/pat2/    
    例如
    #,/pat2/
    /pat1/,$


2
:r /etc/fstaab  在指定行插入该文本
:w /path 在范围内的行另存至指定文件


查找/\<r..t\>  首部开始查找
    尾部查找 ?pattern

查找并替换
要在末行模式下完成查找替换操作
 :s/查找的内容/替换为的内容/修饰符
 
替换为的内容不能使用模式 但可以使用\1 \2等后向引用符号;"&"引用前面查找时找到的整个内容
i忽略大小写
g全局替换
,默认只替换第一次出现的


:.,$s/r\(..\)t/R\1T/g

将当前行到末尾的r..t替换为R..T   \1代表第一个括号


全文找 %s/linux/&er/g

&代表前面的linux整个匹配


查找替换中的分隔符/可以替换为不会出现的字符,比如
s@@@
s$$$

例如  :%s@/root/@/ROOT/@g
就不用转义了


去掉行首空白
:%s/^[[:space:]]\+//  行首就一个 不需要g选项


在空白前面加#
:%s/^[[:space:]]/#&/

vim多文件模式


vim /path1  /path2  /path3
使用 :next  切换文件
:prev
:last
:first

:wall  保存all
:qall  退出all

窗口分割模式

vim -o或者-O  file1  file2 
-o水平分割(上下多屏) -O 垂直分割(左右多屏)

窗口切换
Ctrl+w 再  Arrow(移动箭头)

:wall  保存all
:qall  退出all


单窗口分割
Ctrl+w,s  水平分割
Ctrl+w,v  垂直分割


定制vim工作特性

直接编辑自行创建这个文本
全局vim   /etc/vimrc
个人vim   ~/.vimrc
    末行模式:当前进程有效
    1显示行号
        set number  简写 set num
        取消 set nonumber  ; set nonu

    2括号匹配(高亮度显示左右括号)
        set showmatch ;set sm ;set nosm

    3自动缩进
      set  ai  ;set noai

    4高亮搜索
        set hlsearch
        set nohlsearch
    5语法高亮
        syntax on/off
    6忽略字符大小写
        set ic  ;setnoic
    7获取帮助
        :help
        :help subject

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值