vim常用的几个命令

要查找相同的两行,先将内容排序,然后查找前一行等于后一行
:sort  排序
/^\(.\+\)$\n\1查找相同的行
:g/^\(.\+\)$\n\1/d删除重复行(先排序)
:sort  u去重排序 
%s/^\(.*\n\)\1\+$/\1/             去除重复行
:g/^$/d  删除空格行
:%s/^\s*//g  删除行首空格
:%s/\s*$//g  删除行尾空格
:g/pattern/d  删除匹配到的行
:v/pattern/d  删除不匹配到的行
:g/^\s*$/d 删除空行
d shift+g, 删除当前行至未行
d  gg 删除当前行至首行
:%s/^\\(.*\\)\\n\\1/\\1$/        : 删除重复行 # 非贪婪匹配,\\{-}
替换文本
s/old/new/ 用old替换new,替换当前行的第一个匹配
s/old/new/g 用old替换new,替换当前行的所有匹配
%s/old/new/ 用old替换new,替换所有行的第一个匹配
%s/old/new/g 用old替换new,替换整个文件的所有匹配
:%s/^/your_string/   每行行首添加一个字符串
:%s/$/your_string/   每行行末添加一个字符串
:%s/baidu.*com//d  将两个单词之间的所有字符清除
:%s/baidu.*com/newWord/d  将两个单词之间的所有字符替换为newWord
文件格式
“:set ff?”:查看文件格式,如果是dos的话,在unix下脚本是不能运行的
“:set ff=unix”:设置文件格式
:e ++ff=unix %   查看dos文件乱码字符回车键
#dos2unix filename   将文件dos格式转为unix格式
#tr -d '\r'  < filename.txt >newfilename.txt
设置ftp客户端上传文本模式为ASCII格式,这样会自动将dos文件转为unix文件,如上传图片等二进制文件模式改为Binary格式

“:set number”:显示行号
:1,8 join  合并1到8行为一行

echo $LANG      查看编码
locale系统字符集编码
: syntax enable  高亮显示字体颜色 :syntax on
~/.vimrc   用户级别设置vim配置文件,如果没有在此目录下创建一个
:set hlsearch 搜索时候高亮显示
:set ruler  :在Vim窗口的右下角显示当前光标位置
:set incsearch       : 实时匹配你输入的内容
:%s/^/\=line(".")/   每行行首添加行号
:g/^/s//\=line('.').'  '/  编辑vim中为每行行首增加行号
find . -name "B_*" -mtime +29 |xargs rm 删除30天之前的图片
:set ff?   查看文本格式unix 或 doc
删除^M的方法: 
:%s//r//g 
colorscheme  blue 设置屏幕背景颜色
:syntax on语法高亮
echo $TERM  显示终端颜色 xterm
export  TERM=xterm-color导入一个颜色
apt-get install enca  安装enca ,可查看文件的编码
enca   test.txt 查看test.txt文件的编码
:set  fileencoding 在vim文件里面查看文件的编码
:set enc? 在vim文件里面查看文件的编码--简写
:%s/\\r//g                   : 删除DOS方式的回车^M
:%s=  *$==                  : 删除行尾空白
:\'a,\'bg/fred/s/dick/joe/igc : 非常有用!(ft,又来了!)
# 译释:\'a,\'b指定一个范围:mark a ~ mark b
# g//用一个正则表达式指出了进行操作的行必须可以被fred匹配
# 看后面,g//是一个全局显示命令
# s/dick/joe/igc则对于这些满足条件的行进行替换\r\n# 列复制

Vim-录制宏做一些批量操作--每行行首追加行号 (数字中划线空格)

1- 大兴经济开发区

海淀区卫

中央民族大学

中央电视台

民央财经大学

昌平区

如上数据行首加序号-录制宏

1,如第一行示例,先写好第一行行号用于录制宏;

2,鼠标放在第2行行首第一个字符[海];

3,开始录制:开启录制qa

执行命令  k  y3l   j  P  0 <Ctrl>+a  <Enter>

命令解释  k-跳到上一行; y3l 复制3个字符1- ; j 跳到下一行;  P-大写屁 粘贴到行首;0-数字零回到行首;  <Ctrl>+a 将数字加1;  <Enter> 回车到第3行首也是下一次执行的开始位置

结束录制q

使用宏@a

批量使用 100@a

查看宏:reg a

方法二:使用变量 

qa

:let i=1

shift+i   ctrl+r   = i  回车

:let i+=1

q

执行也可以全选:normal @a

命令解释:

qa 录制宏开始

shift+i  在行首插入

ctrl+r  = i  在vim插入变量的值

:let i+=1  变量i加1

q  录制宏结束

全选执行 :normal @a

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值