vi/vim技巧总结

本文记录一些这些年对vi的积累,由于长期使用AIX上的vi,所以在别的*nix上都可以用(有没有同意AIX上默认的ksh最难用的小伙伴),关于vi基本的操作,一般文档都有的,这里没有列出,多了也记不住,都是自己总结的,都是每天使用频率最高的些命令。

vi * -打开当前目录所有文件或匹配文件,不包含隐藏文件,可以用".*"打开所有隐藏文件,另unix命令都是通配符的,不是正则表达式,这点不要混淆。
:args -查看列表
:rew -回到文件列表第一个
:n -下一个文件
:e# -回到上一个文件
:e! -文件重新载入
:w! -强制保存
e filename:打开文件
文件编辑:
%配合(),编程很有用
1G 到首行
G 到行末
dt) 删除本行到第一个)
df) 删除本行到第一个)和)
"ayy 将本行复制到寄存器a,由于一次打开公用寄存器,主要用于编辑多个文件
"ap  将寄存器中的拷贝到下一行,由于一次打开公用寄存器,主要用于编辑多个文件
>> 最快的向右缩减,缩减大小通过set sw=4设置,可以加数字成倍操作
<< 最快的向左缩减,缩减大小通过set sw=4设置,可以加数字成倍操作
:% > 指定区域缩进
:% j 全文合并一行,拼报文用
:%s/,/,^M/g按,拆分成多行,很有用,可以配合多次操作,造测试文件
1000iword<Esc>插入1000个word,结合上面的替换,可以瞬间造一个很大的文件
g/^$/,/./-j 压缩空行
g!=v  就是在不满足条件的行操作,与g相反
yaw 最快复制单词
%!cut -c56-72 通过!调用外部命令操作,grep、uniq、sort等 
%!sort -u  vi中去除重复行
替换:vi里的替换,基本是sed的一个子集,也是vi的核心
:%s/[a-z]/\U&/g  小写替换大小  其中的&代表每一次匹配到的字符或字符串,这个可以用到很多%里
:%s/[A-Z]/\l&/g  大写替换小写
:%s/ *$// 去掉行尾的所有空格。

替换操作在文件中的灵活运用是vi的精髓,可以组合多次替换完成诸如:拼sql文件,通讯报文等操作

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值