Ⅰ 关于vim命令
yum install vim
不要用*号匹配,这个不是vim命令,而是yum命令。 话说RedHat应该自带Vim啊
Ⅱ 请教vim里g命令的详细使用方法
几乎什么命令都可以用才是 :g 命令强大之所在。
另外 :v (或 :g!)与 :g 相反,是在不匹配的行上执行命令。
但是这里的命令是指冒号命令,所以 :g/../d,是指在匹配行上执行 :d。这个命令本身就是删除行, 而且也没有 :dd 这个命令。楼上说的 c 是指 :c,也是替换,但是不是咱们在普通模式里用的那个 c。
如果想在 :g 使用普通模式的命令,可以用 :normal。详细情况可以自己 :h :normal。但要注意,在执行 :g 的过程中,屏幕不会时时刷新,所以如果你给的命令不能完整执行(即每次执行的时候还要等待你输入其它东西),你很有可能不知道你在做什么。用 ctrl-c 可以中断正在执行的 :g 命令,如果你感觉 :g 卡住了,或者执行的太慢,就用它中断吧。
Ⅲ Vi命令的命令大全
本编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed和vi等,其中,使用最为广泛的是vi,而vi命令繁多,论坛里好像这方面的总结不多,以下稍做总结,以资共享!渴望更正和补充!
进入vi的命令
vi filename :打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次进行编辑
移动光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落最后一个字母
{:光标移至段落第一个字母
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
0:(注意是数字零)光标移至当前行首
$:光标移至当前行尾
屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符
S:删除指定数目的行,并以所输入文本代替之
ncw或nCW:修改指定数目的字
nCC:修改指定数目的行
删除命令
ndw或ndW:删除光标处开始及其后的n-1个字
d0:删至行首
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u:删除输入方式下所输入的文本
搜索及替换命令
/pattern:从光标开始处向文件尾搜索pattern
?pattern:从光标开始处向文件首搜索pattern
n:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
:s/p1/p2/g:将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:将文件中所有p1均用p2替换
选项设置
all:列出所有选项设置情况
term:设置终端类型
ignorance:在搜索中忽略大小写
list:显示制表位(Ctrl+I)和行尾标志($)
number:显示行号
report:显示由面向行的命令修改过的数目
terse:显示简短的警告信息
warn:在转到别的文件时若没保存当前文件则显示NO write信息
nomagic:允许在搜索模式中,使用前面不带“”的特殊字符
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
mesg:允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行
寄存器操作
?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字
ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。
tags 用法
在函数中移动光标
[{ 转到上一个位于第一列的{
}] 转到下一个位于第一列的{
{ 转到上一个空行
} 转到下一个空行 ([ and ] 也分别是两个指令)
ctrl+t 跳回
gd 转到当前光标所指的局部变量的定义
* 转到当前光标所指的单词下一次出现的地方
# 转到当前光标所指的单词上一次出现的地方
Vim 的创造者是一名计算机程序员,因此这就不奇怪 Vim 中有许多帮助编写程序的功能:
跳转到标识符被定义和使用的地方;在另一个窗口中预览有关的声明等等。
Ⅳ vim编辑器命令
如果想获得光标所在行的行号,用 line('.')。如果是想获得列号是 col('.')。
map 的时候也许 execute 这个命令会比较有用。详见 :h 的说明。
如果楼主可以举个比较具体的例子,我们可以给你写一个参照。相信楼主看了会知道大概这些东西怎么使。
Ⅳ vim中以g开头的命令是什么意思
2.4 'g' 开始的命令 *g*
标签 字符 备注 普通模式下的动作 ~
------------------------------------------------------------------------------
|g_CTRL-A| g CTRL-A 只有在编译时加入了 MEM_PROFILE 时才有定义:
转储内存内容
|g_CTRL-G| g CTRL-G 显示当前光标位置
|g_CTRL-H| g CTRL-H 启动选择列块模式
|g_CTRL-]| g CTRL-] |:tjump| 到光标所在的标签上
|g#| g# 1 类似于 "#",但不使用 "\<" 和 "\>"
|g$| g$ 1 'wrap' 关闭时转到当前行最右侧屏幕上可见的字
符
'wrap' 打开时转到当前屏幕行最右侧的字符
|g&| g& 2 在所有行上重复上次的 ":s"
|g'| g'{mark} 1 类似于 |'|,但不改变跳转表
|g`| g`{mark} 1 类似于 |`|,但不改表跳转表
|gstar| g* 1 类似于 "*",但不使用 "\<" 和 "\>"
|g0| g0 1 'wrap' 关闭时转到当前行最左侧屏幕上可见的字
符
'wrap' 打开时转到当前屏幕行最左侧的字符
|g8| g8 显示光标所在的 UTF-8 字符的十六进制字节码
|g<| g< 显示上次的命令输出
|g?| g? 2 Rot13 编码操作符
|g?g?| g?? 2 Rot13 编码当前行
|g?g?| g?g? 2 Rot13 编码当前行
|gD| gD 1 转到当前文件的光标所在单词的定义
|gE| gE 1 反向转移到上一个 WORD 的结尾处
|gH| gH 启动选择行模式
|gI| gI 2 类似于 "I",但总是从第一列开始
|gJ| gJ 2 连接行,不插入空格
|gP| ["x]gP 2 在光标签放置文本 [从寄存器 x] N 次,光标留
在插入文本之后
|gR| gR 2 进入虚拟替换模式
|gU| gU{motion} 2 使得 Nmove 文本全部大写
|gV| gV 在执行选择模式下的映射或者菜单时,不要重复
选择过去的可视区域
|g]| g] :tselect 到光标所在的标签上
|g^| g^ 1 'wrap' 关闭时转到当前行最左侧屏幕上可见的非
空白字符
'wrap' 打开时转到当前屏幕行最左侧的非空白字
符
|ga| ga 打印光标所在处的字符的 ascii 值
|gd| gd 1 转到当前函数里当前光标所在的单词的定义
|ge| ge 1 反向转到前一个单词的结尾处
|gf| gf 开始编辑当前光标所在的名字对应的文件
|gF| gF 开始编辑光标所在的文件名并跳转到文件名后的
行号上。
|gg| gg 1 光标移动到第 N 行,缺省是第一行
|gh| gh 开始选择模式
|gi| gi 2 类似于 "i",但先移动到 |'^| 位置标记
|gj| gj 1 类似于 "j",但 'wrap' 打开时往下 N 个屏幕行
|gk| gk 1 类似于 "k",但 'wrap' 打开时往上 N 个屏幕行
|gm| gm 1 转到屏幕行正中间的那个字符
|go| go 1 光标移动到缓冲区的第 N 个字节
|gp| ["x]gp 2 在光标后面放置文本 [从寄存器 x] N 次,光标
留在后面
|gq| gq{motion} 2 排版 Nmove 文本
|gr| gr{char} 2 虚拟替换 N 个字符为 {char}
|gs| gs 睡眠 N 秒 (缺省 1)
|gu| gu{motion} 2 使得 Nmove 文本全部小写
|gv| gv 重新选择上次的可视区域
|gw| gw{motion} 2 排版 Nmove 文本并保持光标位置
|netrw-gx| gx 执行光标下的文件名对应的应用程序 (仅限于
|netrw| 插件)
|g@| g@{motion} 调用 'operatorfunc'
|g~| g~{motion} 2 改变 Nmove 文本的大小写
|g<Down>| g<Down> 1 等同于 "gj"
|g<End>| g<End> 1 等同于 "g$"
|g<Home>| g<Home> 1 等同于 "g0"
|g<LeftMouse>| g<LeftMouse> 等同于 <C-LeftMouse>
g<MiddleMouse> 等同于 <C-MiddleMouse>
|g<RightMouse>| g<RightMouse> 等同于 <C-RightMouse>
|g<Up>| g<Up> 1 等同于 "gk"
Ⅵ vim命令选中字符段,并且将其删除,使用什么命令
这取决于你的字段分隔符是什么。以冒号为例。
假设你要删除的字段是第3字段。
root:x:0:0:root:/root:/usr/local/bin/zsh
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
你用上面的文件试一下,我试过了。
1,第三字段不是最后一个字段:
%s/^\(\([^:]*:\)\{2}\)[^:]*:\(.*$\)/\1\3/
2,第三字段是最后一段:
%s/:[^:]*//
Ⅶ vim选择命令
这样的命令不知道有木有,不过...你可以自己定义,类似于下:
:map ab <ESC>f(lvf)\
:map aB <ESC>f<lvf>
即可!
Ⅷ linux下vim 查找命令
linux下vim 查找命令:
/text --查找text, 按n查找下一个, N查找上一个
?text --查找text(反向查找), 按n查找下一个, N查找上一个
*/# --查找光标当前的单词,相当于/text
:set ignorecase --查找忽略大小写
:set noignorecase --查找不忽略大小写
:nohlsearch --关闭当前的高亮显示,当再次查找时恢复高亮
:set incsearch --逐步搜索模式,对当前键入的字符进行查找,不必等输入完成
:set wrapscan --重新搜索,当搜索到文件头或尾时,返回重新搜索
(8)vim命令扩展阅读:
1、文件窗口:
:open file --在当前窗口打开新文件
:split file --在新窗口打开文件
:new file --用新窗口打开文件,同 :split file
:bn --切换到下一个文件
:bp --切换到上一个文件
:args --查看当前打开的文件列表(当前正在编辑的文件会用[]括起来)
:e ftp://192.168.10.76/abc.txt
:e qadrive est.txt --打开远程文件
:split --打开一个新窗口,光标停在顶层的窗口上
:new --打开一个新窗口,光标停在顶层的窗口上
:vsplit --横向打开窗口。
Ctrl+ww --移动到下一个窗口
Ctrl+wj --移动到下方的窗口
Ctrl+wk --移动到上方的窗口
2、其他命令:
Esc/Ctrl+[ -- 键入命令
:!command --执行shell命令
:suspend/Ctrl+Z --挂起vim,回到shell,fg 返回vim
:!perl -c script.pl --检查perl脚本语法,不用退出vim
:!perl script.pl --执行perl脚本, 不用退出vim
:help --显示帮助文档
:help i --显示i的帮助文档(:特殊键用<>, -t:启动参数用-)
3、编辑命令:
插入:
i --在当前位置插入
A --在当前行尾插入
I --在当前行首插入
o --在当前行后插入一行
O --在当前行前插入一行
拷贝粘贴剪切:
yy --拷贝当前行
2yy --拷贝当前行开始的2行
p --在当前光标后粘贴
P --在当前行前粘贴
:1,10 co 20 --将1-10行插入到第20行之后。
:1,$ co $ --将整个文件复制一份并添加到文件尾部
v --进入选择模式,相当于在Windows下按住 Shift选择
V --进入选择模式,整行选择
ddp --交换当前行和其下一行
2dd --剪切当前行之后的2行
:1,10d --将1-10行剪切
:1, 10 m 20 --将第1-10行移动到第20行之后
替换:
ra --将当前光标所在字符替换为a
s/old/new/ --用old替换new,替换当前行的第一个匹配
s/old/new/g --用old替换new,替换当前行的所有匹配
%s/old/new/ --用old替换new,替换所有行的第一个匹配
%s/old/new/g --用old替换new,替换所有匹配
:10,20 s/^/text/g --在第10行到第20行每行前面加上text(:3,5 s/^/#/g --注释3-5行, :3,5 s/^#//g
--解除3-5行的注释, :1,$ s/^/#/g --注释整个文档, :%s/^/#/g --注释整个文档)
ddp --交换光标所在行和下一行
移动:
h --左移一个字符(5h --左移5个字符)
l --右移一个字符(5l --右移5个字符)
k --上移一个字符(5k --上移5个字符)
j --下移一个字符(5j --下移5个字符)
w --向后移动一个单词(5w --向后移动5个单词)
b --向前移动一个单词(5b --向前移动5个单词)
e --同 w ,光标停在单词尾部
ge --同 e ,光标停在单词尾部
^ --移动到本行第一个非空白字符
0 --移动到本行第0个字符
--同0
$ --移动到行尾(3$ --移动到下面3行的行尾)
gg --移动到文件头(10gg --移动到第10行首)
[[ --同 gg
G --移动到文件尾(10G --移动到第10行尾)
]] --同 G
fx --移动到本行光标后第一个为x的字符(3fx --移动到本行光标后第3个为x的字符)
Fx --同 fx ,反向查找
:20 --跳到20行行首
Ctrl+e --向下滚动一行
Ctrl+y --向上滚动一行
Ctrl+d --向下滚动半屏
Ctrl+u --向上滚动半屏
Ctrl+f --向下滚动一屏
Ctrl+b --向上滚动一屏
撤销:
u --撤销
U --撤销对整行的操作
Ctrl+r --撤销刚才的撤销
删除:
x --删除当前字符(3x --删除当前光标开始向后三个字符)
X --删除当前字符的前一个字符, 同 dh
dl --删除当前字符, 同 x
dh --删除前一个字符
dd --删除当前行
dj --删除上一行
dk --删除下一行
10d --删除当前行开始的10行。
D --删除当前字符至行尾, 同 d$
kdgg --删除当前行之前所有行(不包括当前行)
:1,10d --删除1-10行
:11,$d --删除11行及以后所有的行
:1,$d --删除所有行
J--删除两行之间的空行, 合并两行
退出
:wq --保存并退出
ZZ --保存并退出
:q! --强制退出并忽略所有更改
:e! --放弃所有修改,并打开原来文件
:close --关闭窗口,最后一个窗口不能使用此命令,可以防止意外退出vim
:q --如果是最后一个被关闭的窗口,那么将退出vim
Ⅸ vim查找命令
命令模式下,输入 /word 后回车,即查找word,
按 n 查找下一个匹配单词,按 N 查找上一个匹配单词。
Ⅹ linux 怎么使用vi命令调用vim
建立一个命令别名即可,建立别名的命令是这样的:
alias vi=vim
注意,直接在终端用alias建立的命令别名可以直接生效,但是在重新登录后就失效了,所以如果以后长期需要用vi调用vim,就需要将alias vi=vim这一行写入终端环境配置文件中,可以写入~/.bashrc或者/etc/profile中,前者对当前登录用户有效,后者对所有用户有效,设置完成后如果想马上生效需要用source命令执行一下配置文件,比如:source ~/.bashrc。