linux vim快捷键大全 速查
2014-10-08 14:19
288 查看
一. 移动:
h,j,k,l: 左,下,上,右。
w: 下一个词的词首。
e:下一个词的词尾。
b:上一个词的词首。
<> : v 模式选中后进行缩进。
二. 跳转:
%: 可以匹配{},”",(),[]之间跳转。
H、M、L:直接跳转到当前屏幕的顶部、中部、底部。
#H:跳转到当前屏的第#行。
#L:跳转到当前屏的倒数第#行。
zt: 当前编辑行置为屏顶。
zz: 当前编辑行置为屏中。
zb: 当前编辑行置为屏底。
G:直接跳转到文件的底部。
gg: 跳转到文件首。
():跳转到当前的行首、行尾。
{}:向上、向下跳转到最近的空行。
[{:跳转到目前区块开头。
]}:跳转到目前区块结尾。
0: 跳转到行首。
$: 跳转到行尾。
2$: 跳转到下一行的行尾。
#:跳转到该行的第#个位置。
#G: 15G,跳转到15行。
:#:跳转到#行。
f’n':跳转到下一个”n”字母后。
ctrl+b: 向后翻一页。
ctrl+f:向前翻一页。
ctrl+u: 向后翻半页。
ctrl+d: 向前翻半页。
ctry+e: 下滚一行。
三. 选择:
1.V: 选择一行。
2.^V: 矩形选择。
3.v3w: 选择三个字符。
四. 编辑:
1. 新增:
i: 光标前插入。
I: 在当前行首插入。
a: 光标后插入。
A: 当前行尾插入。
O: 在当前行之前插入新行。
o: 在当前行之后插入新行。
2. 修改 c(change) 为主:
r: 替换光标所在处的字符。
R:替换光标所到之处的字符。
cw: 更改光标所在处的字到字尾处。
c#w: c3w 修改3个字符。
C:修改到行尾。
ci’:修改配对标点符号中的文本内容。
di’:删除配对标点符号中的文本内容。
yi’:复制配对标点符号中的文本内容。
vi’:选中配对标点符号中的文本内容。
s:替换当前一个光标所处字符。
#S:删除 # 行,并以新文本代替。
3. 删除 d(delete) 为主:
D:删除到行尾。
X: 每按一次,删除光标所在位置的前面一个字符。
x: 每按一次,删除光标所在位置的后面一个字符。
#x: 删除光标所在位置后面6个字符。
d^: 删至行首。
d$: 删至行尾。
dd:(剪切)删除光标所在行。
dw: 删除一个单词/光标之后的单词剩余部分。
d4w: 删除4个word。
#dd: 从光标所在行开始删除#行。
daB: 删除{}及其内的内容。
diB: 删除{}中的内容。
n1,n2 d:将n1,n2行之间的内容删除。
4. 查找:
/: 输入关键字,发现不是要找的,直接在按n,向后查找直到找到为止。
?: 输入关键字,发现不是要找的,直接在按n,向前查找直到找到为止。
*: 在当前页向后查找同一字。
#: 在当前页向前查找同一字。
5. 复制 y(yank)为主:
yw: 将光标所在之处到字尾的字符复制到缓冲区中。
#yw: 复制#个字到缓冲区。
Y:相当于yy, 复制整行。
#yy:表示复制从光标所在的该行往下数#行文字。
p: 粘贴。所有与y相关的操作必用p来结合粘贴。
n1,n2 co n3:复制第n1行到第n2行之间的内容到第n3行后面。
6. 大小写转换:
gUU: 将当前行的字母改为大写。
guu: 将当前行的字母改为小写。
gUw: 将当前光标下的单词改为大写。
guw: 将当前光标下的单词改为小写。
a. 整篇大写: ggguG gg: 光标到文件第一个字符。
gu: 把选择范围全部小写。
G: 到文件结束。
b. 整篇小写:gggUG
7. 其它:
J:当前行和下一行合并成一行。
8. 移动:
n1,n2 m n3:将n1行到n2行之间的内容移至n3行下。
五.退出:
1. w filename: 保存正在编辑的文件filename
2. wq filename: 保存后退出正在编辑的文件filename
3. q:退出不保存。
六.窗口操作:
1. ctrl+w p: 在两个分割窗口之间来回切换。
2. ctrl+w j: 跳到下面的分割窗
3. ctrl+w h: 跳到左边的分割窗。
4. ctrl+w k: 跳到上面的分割窗。
5. ctrl+w l: 跳到右边的分割窗。
Linux的终端显示行号
首先用vi进入文件点“Esc”→“:”→“set number”→回车
29
vim 替换操作大全
vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:2,$s/vivian/sky/g 替换第 2 行开始到最后一行中每一行所有 vivian 为 sky
n 为数字,若 n 为 .,表示从当前行开始到最后一行
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/
1.:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
2. :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
3. :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
4. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
5. 删除文本中的^M
问题描述:对于换行,window下用回车换行(0A0D)来表示,Linux下是回车(0A)来表示。这样,将window上的文件拷到Unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。
· 使用命令:cat filename1 | tr -d "^V^M" > newfile;
· 使用命令:sed -e "s/^V^M//" filename > outputfilename。需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。
· 在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//。
· :%s/^M$//g
如果上述方法无用,则正确的解决办法是:
· tr -d "\r" < src >dest
· tr -d "\015" dest
· strings A>B
6. 其它
利用 :s 命令可以实现字符串的替换。具体的用法包括:
:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1
:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1
:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1
:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1
:g/str1/s//str2/g 功能同上
从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索
字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。
vim中如何将一个文件的内容拷贝到另一个文件中
如要将a.txt的内容拷贝到b.txt中,可以执行如下步骤:
用vim打开b.txt。将光标定位到要复制插入的位置,然后进入命令模式中输入 :r!cat a.txt
在用vim编辑文件时,常常会用到一个功能:把编辑文件的几行内容拷贝到一个新文件中。怎么实现该功能?
假设编辑文件nginx.conf ,把该文件的51至91行拷贝到新文件./vhost/res.help.com.conf中,详细实现,请参阅下面示例::51,91w!./vhost/res.help.com.conf
再继续拓展下,如何再把nginx.conf 中的31到34行追加到文件./vhost/res.help.com.conf中,请参阅下面示例:
:31,34 w! >>./vhost/res.help.com.conf
获取文件后缀名
file=”thisfile.txt”
echo “filename: ${file%.*}”
echo “extension: ${file##*.}”
outputs:
filename: thisfile
extension: txt
XCODE 文件对比(svn)
:co
相关文章推荐
- photoshop快捷键速查表大全
- VC++快捷键大全
- VC6.0快捷键大全
- MyEclipse快捷键大全
- Source Insight 常用设置和快捷键大全
- eclipse 快捷键大全
- VS2015快捷键大全
- MyEclipse快捷键大全(绝对全)
- Notepad++ 快捷键 大全
- MyEclipse快捷键与插件大全
- visual studio 2013 快捷键大全、VS2013常用快捷键
- 由浅入深CIL系列:2.CIL的基本构成+CIL操作码速记表+CIL操作码大全速查
- PHPStrom中实用的功能和快捷键大全
- MyEclipse 7.0快捷键大全
- Android Studio常用快捷键、Android Studio快捷键大全
- vs2008快捷键大全
- win8快捷键大全分享,非常全
- 我是快捷键控!(个人总结的Windows及Linux下快捷键大全)
- 【转】visual studio快捷键大全
- Source Insight 常用设置和快捷键大全