vim 多文件编辑【超实用】
vim 多文件编辑(偶的linux笔记) http://blog.csdn.net/lcj_cjfykx/article/details/18805721
通过vim打开的每个文件都对应着一个buffer(buffer是系统为打开的文件分配的内存空间),每个buffer都有一个id。
1. 在同一窗口下显示多个文件
命令:vim filename1 filename2
:n 切换到下一个文件
:N 切换到上一个文件
:n filename2 切换到文件filename2
:ls 列出vim打开的所有文件的信息,包括文件名,buffer id等
:b2 切换到buffer id为2的buffer
:bn 切换到当前buffer的下一个buffer
:bp 切换当前buffer的前一个buffer
:bd2 关闭buffer id为2的buffer,对应文件也随之关闭
完成编辑可以用q一个个地退出,可以用qa一次性全部退出。
2.分割窗口,显示多个文件
对于在同一个窗口下打开多个文件,对于各文件之间内容的复制,剪切操作终究不方便,我们可使用命令对窗口进行分割,每个子窗口显示一个文件
命令:vim -o filename1 filename2 水平分割窗口
vim -O filename1 filename2 垂直分割窗口
通过该种方式可非常方便各文件内容之间的复制与剪切操作,这里顺便简单提一下复制,剪切与粘贴操作命令
yy 复制光标所在行
dd 剪切光标所在行
5yy 复制从光标所在行开始计数的下五行文本
5dd 剪切从光标所在行开始计数的下五行文本
v(小写) visual模式,通过上下左右键选择光标“扫过”的所有字符
V (大写) visual line 模式,通过上下键选择光标“扫过”的所有行
ctrl + v visual block 模式,通过上下左右键选择一个矩形文本
y 复制在visual模式, visual line模式和visual block 模式下选择的文本
d 剪切在visual模式, visual line模式和visual block 模式下 选择的文本
p(小写) 粘贴, 粘贴位置为光标所在行的下一行
P(大写) 粘贴, 粘贴位置为光标所在行的上一行
提示:
a.假若我们通过vim打开了多个文件后,想在不关闭vim的情况下继续打开其他文件,如文件file,可在vim中使用如下命令:
:e file 不会分割窗口
:sp file 将会水平分割窗口
:vsp file 将会垂直分割窗口
b. vim和shell之间切换
:shell 切换到shell,此时vim在后台运行,在shell中输入命令exit,切换回vim
c. 在vim中执行shell命令(不切换到shell)
:!command 在执行的命令前加上!,如!ls ,!ls -a
: r !command 将command命令的执行结果插入到文本当前行的下一行
: 3 !command 将文本中第三行的内容输入到命令command中进行处理,并将第三行的内容替换为命令的执行结果
:1,3 !command 将文本中第一行到第三行的内容输入到命令command中进行处理,并将第一行到第三行的内容替换为命令的执行结果
: 3 w !command 将文本中第三行的内容输入到命令command中进行处理,不改变当前编辑文件的内容.
:1,3 w !command 将文本中第一行到第三行的内容输入到命令command中进行处理,不改变当前编辑文件的内容
vim 多文件编辑【超实用】的更多相关文章
- VIM中保存编辑的只读文件
如何在VIM中保存编辑的只读文件 你是否会和我一样经常碰到这样的情景:在VIM中编辑了一个系统配置文件,当需要保存时才发现当前的用户对该文件没有写入的权限.如果已 经做了很多修改,放弃保存的确很懊恼, ...
- 文件的软硬链接& 文件编辑vi和vim
目录 文件的软硬链接 1.软链接 2.硬链接 文件编辑vi和vim 须先安装vim命令的软件包yum install -y vim 三种模式: 1.普通模式 2.编辑模式 3.末行模式 文件的软硬链接 ...
- Linux常用命令之文件编辑命令vim
vi命令 vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器.Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多 ...
- vim的多文件编辑和多窗口功能
有的时候我们可能会需要打开多个文件同时进行编辑,例如把一个文件的内容复制到另一个文件中时: 多文件编辑 :n :编辑下一个文件 :N : 编辑上一个文件 :files :列出目前这个vim打开的所有文 ...
- 使用vim打开文件的16进制形式,编辑和全文替换
1.先用vim打开文件的二进制形式,如果不以二进制可能会产生转换错误. vim -b file-to-open.dat 2.用xxd把文件转换成十六进制格式 :%!xxd 现在就可以对待普通文本一样查 ...
- Linux文件编辑工具——VIM
Linux文件编辑工具--VIM 1.VIM基本概述 1.1 什么是vim vi 和 vim 是 Linux 下的一个文本编辑工具.(可以理解为 windows 的记事本,或 Notepad++ 1. ...
- Linux:多文件编辑
多文件编辑 1.使用vim编辑多个文件 编辑多个文件有两种形式,一种是在进入vim前使用的参数就是多个文件.另一种就是进入vim后再编辑其他的文件. 同时创建两个新文件并编辑 $ vim 1.txt ...
- Vim的文件加密
X----->(大写的X)是加密 取消文件密码:进入文件编辑模式 重复vim加密 只是输入密码时为空(直接回车)--->:w ~ Warning: Using a weak encrypt ...
- vim+makefile入门编辑,编译,差错实例
vim+makefile入门编辑,编译,差错实例 vim makefile 编译 编写代码,一般在vim中编辑完后,输入:wq,在命令行下输入g++ hello.cc -o hello ,出现问题,打 ...
随机推荐
- Oracle ODI系列之一(ODI知识模块)
Oracle ODI系列之一(ODI知识模块) ODI简介 ODI(Oracle Data Integrator)前身是Sunopsis Active Integration Platform ...
- BZOJ 1037 [ZJOI2008]生日聚会Party(单调DP)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1037 [题目大意] 现在有n个男生,m个女生排成一行,要求不存在一个区间男女之差大于k ...
- POJ 3294 Life Forms(后缀数组+二分答案)
[题目链接] http://poj.org/problem?id=3294 [题目大意] 求出在至少在一半字符串中出现的最长子串. 如果有多个符合的答案,请按照字典序输出. [题解] 将所有的字符串通 ...
- SQL SERVER表不能修改表结构的处理方法
SQL SERVER表提示不能修改表结构,这究竟是什么原因呢?下面就为您介绍处理该问题的方法,如果您在SQL SERVER表修改方面遇到过问题,不妨一看. 新装的SQL SERVER 2008,打开原 ...
- HDU 11488 Hyper Prefix Sets (字符串-Trie树)
H Hyper Prefix Sets Prefix goodness of a set string is length of longest common prefix*number of str ...
- android UI进阶之用ViewPager实现欢迎引导页面[转]
ViewPager需要android-support-v4.jar这个包的支持,来自google提供的一个附加包.大家搜下即可. ViewPager主要用来组织一组数据,并且通过左右滑动的方式来展示. ...
- C++之static_cast, dynamic_cast, const_cast
转自:http://www.cnblogs.com/chio/archive/2007/07/18/822389.html 首先回顾一下C++类型转换: C++类型转换分为:隐式类型转换和显式类型转换 ...
- XMLHttpRequest对象的使用
1.首先要创建XMLHttpRequest对象,这个对象是前台与后台进行异步的重要对象,现在的浏览器有很多种,创建 XMLHttpRequest 的方法也不相同,所以为了兼容各种浏览器,在创建XMLH ...
- iOS网络开发-AFNetworking请求asp.net WebService
看到园子有位朋友需要使用AFN框架请求 WebService,所以就整理了一下,demo下载链接在底部 编写WebService可以看这篇博客 http://www.cnblogs.com/linmi ...
- margin 属性的相关问题
1.margin 的IE6 双边距问题 问题描述:浮动的块挨边框的时候会产生双倍的边距 解决方案: 1.增加display:inline; 2.去除float属性 2.margin 的重叠问题 CSS ...