VIM常用命令
vim编辑器常用命令
vim编辑器常⽤命令vi有3个模式:插⼊模式、命令模式、低⾏模式。
插⼊模式:在此模式下可以输⼊字符,按ESC将回到命令模式。
命令模式:可以移动光标、删除字符等。
低⾏模式:可以保存⽂件、退出vi、设置vi、查找等功能(低⾏模式也可以看作是命令模式⾥的)。
⼀、打开⽂件、保存、关闭⽂件(vi命令模式下使⽤)vi filename //打开filename⽂件:w //保存⽂件:w //保存⾄⽂件:q //退出编辑器,如果⽂件已修改请使⽤下⾯的命令:q! //退出编辑器,且不保存:wq //退出编辑器,且保存⽂件⼆、插⼊⽂本或⾏(vi命令模式下使⽤,执⾏下⾯命令后将进⼊插⼊模式,按ESC键可退出插⼊模式)a //在当前光标位置的右边添加⽂本i //在当前光标位置的左边添加⽂本A //在当前⾏的末尾位置添加⽂本I //在当前⾏的开始处添加⽂本(⾮空字符的⾏⾸)O //在当前⾏的上⾯新建⼀⾏o //在当前⾏的下⾯新建⼀⾏R //替换(覆盖)当前光标位置及后⾯的若⼲⽂本J //合并光标所在⾏及下⼀⾏为⼀⾏(依然在命令模式)三、移动光标(vi命令模式下使⽤)1、使⽤上下左右⽅向键2、命令模式下:h 向左、j 向下、k 向上、l 向右。
空格键向右、Backspace 向左、Enter 移动到下⼀⾏⾸、- 移动到上⼀⾏⾸。
四、删除、恢复字符或⾏(vi命令模式下使⽤)x //删除当前字符nx //删除从光标开始的n个字符dd //删除当前⾏ndd //向下删除当前⾏在内的n⾏u //撤销上⼀步操作U //撤销对当前⾏的所有操作五、搜索(vi命令模式下使⽤)/vpser //向光标下搜索vpser字符串vpser //向光标上搜索vpser字符串n //向下搜索前⼀个搜素动作N //向上搜索前⼀个搜索动作六、跳⾄指定⾏(vi命令模式下使⽤)n+ //向下跳n⾏n- //向上跳n⾏nG //跳到⾏号为n的⾏G //跳⾄⽂件的底部七、设置⾏号(vi命令模式下使⽤):set nu //显⽰⾏号:set nonu //取消显⽰⾏号⼋、复制、粘贴(vi命令模式下使⽤)yy //将当前⾏复制到缓存区,也可以⽤ "ayy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
vim命令大全_pdf
vim 命令(全)本章提供足够的信息使你用够使用 Vim 来做基本的编辑。
这里提供的方法不一定是高效 快捷的。
但起码是有效的。
花些时间去练习这些命令,这是后面的知识的基础。
|02.1| 第一次运行 Vim|02.2| 插入文本|02.3| 移动光标|02.4| 删除字符|02.5| 撤销与重做|02.6| 其它编辑命令|02.7| 退出|02.8| 寻求帮助下一章:|usr_03.txt| 移动前一章:|usr_01.txt| 关于本手册目录:|usr_toc.txt|--------------------------------------------------------------------------------*02.1* 第一次运行 Vim启动 Vim 的命令如下:gvim file.txt在 UNIX 操作系统中,你可以在任意命令提示符下输入这个命令。
如果你用的是 Microsoft Windows, 启动一个 MS-DOS 窗口,再输入这个命令。
无论哪一种方式,现在 Vim 开始编辑一个名为 file.txt 的文件了。
由于这是一个新建文件,你会得到一个空的窗口。
屏幕看起来会象下面这样:+---------------------------------------+|# ||~ ||~ ||~ ||~ ||"file.txt" [New file] |+---------------------------------------+('#"是当前光标的位置)以波纹线(~)开头的行表示该行在文件中不存在。
换句话说,如果 Vim 打开的文件不能充满这个显示的屏幕,它就会显示以波纹线开头的行。
在屏幕的底部,有一个消息行指示文件 名为 file.txt 并且说明这是一个新建的文件。
这行信息是临时的,新的信息可以覆盖它。
VIM 命 令gvim 命令建立一个新窗口用于编辑。
Vim编辑指令
Vim编辑指令基本命令Esc 或 Ctrl+[ 进⼊普通模式i (插⼊) a (附加) 进⼊插⼊模式wq 回车保存退出vim后⾯加上你要打开的已存在的⽂件名或者不存在(则作为新建⽂件)的⽂件名。
打开Xfce终端$ vim practice_1.txt直接使⽤vim也可以打开vim编辑器 vim进⼊命令⾏模式后输⼊:e ⽂件路径同样可以打开相应⽂件游标移动h左l右(⼩写L)j下k上w移动到下⼀个单词b移动到上⼀个单词在普通模式下使⽤下⾯的键将进⼊插⼊模式,并可以从相应的位置开始输⼊命令说明i在当前光标处进⾏编辑I在⾏⾸插⼊A在⾏末插⼊a在光标后插⼊编辑o在当前⾏后插⼊⼀个新⾏O在当前⾏前插⼊⼀个新⾏cw替换从光标所在位置后到⼀个单词结尾的字符请尝试不同的从普通模式进⼊插⼊模式的⽅法,在最后⼀⾏shiyanlou前⾯加上www.,注意每次要先回到普通模式才能切换成以不同的⽅式进⼊插⼊模式保存⽂档(命令⾏模式下保存⽂档)从普通模式输⼊:进⼊命令⾏模式,输⼊w回车,保存⽂档。
输⼊:w ⽂件名可以将⽂档另存为其他⽂件名或存到其它路径下退出vim(命令⾏模式下退出vim)从普通模式输⼊:进⼊命令⾏模式,输⼊wq回车,保存并退出编辑命令说明q!强制退出,不保存q退出wq!强制保存并退出w <⽂件路径>另存为saveas ⽂件路径另存为x保存并退出wq保存并退出普通模式下退出vim普通模式下输⼊Shift+zz即可保存退出vim删除⽂本(普通模式下删除vim⽂本信息)进⼊普通模式,使⽤下列命令可以进⾏⽂本快速删除命令说明x删除游标所在的字符X删除游标所在前⼀个字符Delete同xdd删除整⾏dw删除⼀个单词(不适⽤中⽂)d$或D删除⾄⾏尾d^删除⾄⾏⾸dG删除到⽂档结尾处d1G删⾄⽂档⾸部u撤销ndd删除光标所在位置起的多⾏n为数字yy复制光标当前所在的那⼀⾏nyy复制多⾏为n的数字p将已复制的内容粘贴到光标所在的位置的下⼀⾏⼤P将已复制的内容粘贴到光标所在位置的上⼀⾏np粘贴多⾏到光标的下⼀⾏为n的数字cttl+r重复上⼀次操作$跳到⼀⾏的尾部0跳到⼀⾏的头部gg移动到这个⽂件的第⼀⾏G跳到这个⽂件的最后⼀⾏nG跳到n⾏set nu显⽰⾏号H光标移动到屏幕的最上⽅那⼀⾏的第⼀个字符M光标移动到屏幕的中央那⼀⾏的第⼀个字符L光标移动到屏幕的最下⾯那⼀⾏的第⼀个字符vim重复命令重复执⾏上次命令在普通模式下.(⼩数点)表⽰重复上⼀次的命令操作拷贝测试⽂件到本地⽬录$ cd /home/shi$ cp /etc/protocols .游标的快速跳转普通模式下,下列命令可以让光标快速调转到指定位置,我们分别讨论快速实现⾏间跳转和⾏内跳转⾏间跳转命令说明nG(n shift+g)游标移动到第 n ⾏(如果默认没有显⽰⾏号,请先进⼊命令模式,输⼊:set nu以显⽰⾏号) gg游标移动到第⼀⾏G(Shift+g)到最后⼀⾏⼩技巧:你在完成依次跳转后,可以使⽤ Ctrl+o 快速回到上⼀次(跳转前)光标所在位置,这个技巧很实⽤,⽐如当你在写代码时,忽然想起有个 bug,需要修改,这时候你跳过去改好了,只需要按下 Ctrl+o 就可以回到你之前的位置。
vim 查询命令用法
在vim中,有多种查询命令可以用来查找文本,其中比较常用的有以下几种:1. "/pattern":这个命令可以用来在当前光标所在行中查找匹配的文本,其中"pattern"表示要查找的文本。
可以使用正则表达式来进行精确匹配。
例如,"/hello"可以查找当前光标所在行中包含字符串"hello"的文本。
2. "?pattern":这个命令与上面的命令类似,不同之处在于它是一个反向查找命令,可以在当前光标所在行之前查找匹配的文本。
例如,"?hello"可以查找当前光标所在行之前包含字符串"hello"的文本。
3. "/\p{L}":这个命令可以用来查找任何一个字符集,其中"\p{L}"表示任意一个字母字符。
例如,"/\p{L}"可以查找当前光标所在行中的任何一个字母。
4. "/\w":这个命令可以用来查找任何一个单词字符,其中"\w"表示任何一个单词字符,即字母、数字和下划线。
例如,"/\w"可以查找当前光标所在行中的任何一个单词字符。
5. "/\d":这个命令可以用来查找任何一个数字字符,其中"\d"表示任何一个数字字符。
例如,"/\d"可以查找当前光标所在行中的任何一个数字字符。
除了上述命令之外,还有一些其他的查询命令可以用来查找文本,例如"/\<pattern>"、"/=\<pattern>"、"/\zs\<pattern>"等。
具体使用方法可以参考vim的官方文档或者相关的教程。
VIM使用快捷键总结
VIM使用快捷键总结1.光标移动:-h:左移一个字符-j:下移一行-k:上移一行-l:右移一个字符-0:移动到行首-^:移动到行首第一个非空字符-$:移动到行尾- gg:移动到文件开头-G:移动到文件末尾-w:向前跳至下一个单词的开头-e:向后跳至下一个单词的结尾-b:向前跳至上一个单词的开头-(:向前移动一个句子-):向后移动一个句子-{:向前移动一个段落-}:向后移动一个段落2.插入、删除、复制与粘贴:-i:在当前光标处插入-I:在当前行首插入-a:在当前光标后插入-A:在当前行尾插入-o:在当前行下方插入新行-O:在当前行上方插入新行-x:删除当前光标处的字符- dd:删除当前行- dw:删除一个单词-d$:删除从光标到行尾的内容- yy:复制当前行- yw:复制一个单词-p:粘贴复制的内容-u:撤销上一步操作- Ctrl+r:重做上一步操作3.与替换:-/:-n:跳至下一个结果-N:跳至上一个结果- :s/old/new/g:在当前行替换第一个匹配项- :s/old/new/gc:在当前行替换所有匹配项,并进行确认4.文件操作:-:w:保存文件-:q:关闭文件-:q!:强制关闭文件- :wq:保存并关闭文件- :e filename:打开filename文件- :bn:下一个buffer- :bp:上一个buffer- :bd:关闭buffer- :sp filename:水平分屏打开filename- :vsp filename:垂直分屏打开filename- Ctrl+w:窗口切换5.撤销与重做:-u:撤销上一步操作- Ctrl+r:重做上一步操作-U:撤销对整行的修改6.选中与复制:-v:进入可视模式-V:可视行模式- Ctrl+v:可视块模式-y:复制选中内容-d:删除选中内容7.块操作:- Ctrl+v:进入可视块模式-I:在选中块行首插入-A:在选中块行尾插入-x:删除选中块-y:复制选中块-d:删除选中块8.折叠:- zf+光标移动:创建折叠- za:打开/关闭折叠- zc:关闭折叠- zo:打开折叠9.操作历史:- :earlier 10s:恢复到10秒前的状态- :later 10s:撤销到10秒后的状态10.多窗口操作:- Ctrl+w s:水平分割- Ctrl+w v:垂直分割- Ctrl+w j:光标移至下方窗口- Ctrl+w k:光标移至上方窗口- Ctrl+w h:光标移至左边窗口- Ctrl+w l:光标移至右边窗口- Ctrl+w =:调整窗口尺寸相等- Ctrl+w _:窗口最大化(水平方向)- Ctrl+w ,:窗口最大化(垂直方向)。
Vim命令列表
Vim命令列表操纵文件Vim命令动作:e filename 打开一个新文件,可以用TAB键自动补全:w filename 保存更改。
如果不指定文件名,Vim会存为你正在编辑的文件。
如果要存为不同的文件,需要指定文件名:q 退出Vim。
如果有未保存的更改,Vim会拒绝退出。
:q! 强制退出!:wq 写文件并退出:x 几乎和:wq一样,如果你修改了文件,它会写文件并退出。
如果你没有修改文件,Vim会不写文件直接退出。
文件内的移动These Vim commands and keys work both in command mode and visual mode.Vim命令动作j or Up Arrow 向上移动一行k or Down Arrow 向下移动一行l or Right Arrow 向右移动一个字符h or Left Arrow 向左移动一个字符e 移动到一个词(word)尾E 移动到白空格(whitespace)分隔的词尾b 移动到一个词(word)的开头B 移动到白空格(whitespace)分隔的词头0 移动到行首^ 移动到一行的首个非白空格的字符$ 移动到行尾H 移动到屏幕的第一行M 移动到屏幕的中间一行L 移动到屏幕的最后一行:n 跳至屏幕的第n行插入和替换文本Vim命令动作i 在光标之前插入I 在该行行首插入a 在光标之后插入A 在该行行尾插入o 在下一行新建一行并插入O 在上一行新建一行并插入C Change the rest of the current line.r 覆盖一个字符。
在覆盖完成以后,回到命令模式。
R 进入插入模式,但是不再是插入文本,而是覆盖文本。
跟word 里insert键的作用类似ESC 退出插入/改写模式,回到命令模式。
删除文本Vim命令动作x 删除光标后的字符X 删除光标前的字符dd or :d 删除当前行进入可视模式(Visual mode)Vim命令动作v 开始定义高亮字符,用定位键(j or 向下键等)来选择要高亮的文本。
vim命令及快捷键
vim命令及快捷键[1. 关于Vim]vim是我最喜欢的编辑器,也是linux下第⼆强⼤的编辑器。
虽然emacs是公认的世界第⼀,我认为使⽤emacs并没有使⽤vi进⾏编辑来得⾼效。
如果是初学vi,运⾏⼀下vimtutor是个聪明的决定。
(如果你的系统环境不是中⽂,⽽你想使⽤中⽂的vimtutor,就运⾏vimtutor zh)[1.1 Vim的⼏种模式]正常模式:可以使⽤快捷键命令,或按:输⼊命令⾏。
插⼊模式:可以输⼊⽂本,在正常模式下,按i、a、o等都可以进⼊插⼊模式。
可视模式:正常模式下按v可以进⼊可视模式,在可视模式下,移动光标可以选择⽂本。
按V进⼊可视⾏模式,总是整⾏整⾏的选中。
ctrl+v进⼊可视块模式。
替换模式:正常模式下,按R进⼊。
[2. 启动Vim]vim -c cmd file: 在打开⽂件前,先执⾏指定的命令;vim -r file: 恢复上次异常退出的⽂件;vim -R file: 以只读的⽅式打开⽂件,但可以强制保存;vim -M file: 以只读的⽅式打开⽂件,不可以强制保存;vim -y num file: 将编辑窗⼝的⼤⼩设为num⾏;vim + file: 从⽂件的末尾开始;vim +num file: 从第num⾏开始;vim +/string file: 打开file,并将光标停留在第⼀个找到的string上。
vim --remote file: ⽤已有的vim进程打开指定的⽂件。
如果你不想启⽤多个vim会话,这个很有⽤。
但要注意,如果你⽤vim,会寻找名叫VIM的服务器;如果你已经有⼀个gvim在运⾏了,你可以⽤gvim --remote file在已有的gvim中打开⽂件。
[3. ⽂档操作]:e file --关闭当前编辑的⽂件,并开启新的⽂件。
如果对当前⽂件的修改未保存,vi会警告。
:e! file --放弃对当前⽂件的修改,编辑新的⽂件。
:e+file -- 开始新的⽂件,并从⽂件尾开始编辑。
vi编辑器常用的命令及快捷键
ttext 在当前行向前查找text,并将光标定位在text的第一个字符
Ttext 在当前行向后查找text,并将光标定位在text的第一个字符
vi的状态
选项 作用
:.= 打印当前行的行号
:= 打印文件中的行数
^g 显示文件名、当前的行号、文件的总行数和文件位置的百分比
E 移到下一个字的结尾,忽略标点符号
( 移到句子的开头
) 移到句子的结尾
{ 移到段落的开头
} 移到下一个段落的开头
x 删除光标处的字符,可以在x前加上需要删除的字符数目
nx 从当前光标处往后删除n个字符
X 删除光标前的字符,可以在X前加上需要删除的字符数目
nX 从当前光标处往前删除n个字符
0或| 移到当前行的第一列
n| 移到当前行的第n列
^ 移到当前行的第一个非空字符
$ 移到当前行的最后一个字符
+或return 移到下一行的第一个字符
B 移到前一个字的开头,忽略标点符号
L 移到屏幕的最后一行
M 移到屏幕的中间一行
H 移到屏幕的第一行
e 移到下一个字的结尾
:set ic 查找时忽略大小写
:set noic 查找时对大小写敏感
:s/oldtext/newtext 用newtext替换oldtext
:m,ns/oldtext/newtext 在m行通过n,用newtext替换oldtext
在vi中复制文本
命令 复制操作
yy 将当前行的内容放入临时缓冲区
nyy 将n行的内容放入临时缓冲区
p 将临时缓冲区中的文本放入光标后
Vim编辑文件
Vim模式
• 命令模式:控制光标移动,对文本删除、复制、粘贴和查找等。 • 输入模式:正常的文本录入。 • 末行模式:保存、退出与设置编辑环境。
命令模式常用命令
命令 dd 5dd yy 5yy p 作用 删除(剪切)光标所在整行。 删除(剪切)从光标处开始的5行。 复制光标所在整行。 复制从光标处开始的5行。 将之前删除(dd)或复制(yy)过的数据粘贴到光标后。
:整数
:s/one/two :s/one/two/g :%s/one/two/g :set ignorecase(:set noignorecase)
跳转到该行
将当前光标所在行的第一个one替换成two 将当前光标所在行的所有one替换成two 将全文中的所有one替换成two 忽略大小写(大小写敏感)
?字符串
/字符串 n N u
在文本中从下至上搜索该字符串。
在文本中从上至下搜索该字符串。 显示搜索命令定位到的下一个字符串。 显示搜索命令定位到的上一个字符串。 撤销上一步的q! :set nu (:set nonu) 作用 保存 退出 强制退出(放弃对文本的修改内容) 强制保存退出 显示行号 ( 不显示行号)
可视模式
• 删除多行注释 • Ctr+v -->移动光标选择多行-->d(x) • 添加多行注释 • Ctr+v -->移动光标选择多行-->I(大写字母i)--># -->ESC
学习Vim:vimtutor
额外的一点命令
• sed -i ‘s/str1/str2/g’ file1
VIM命令大全
set nu
#行号
set ai
#设置自动缩进
syntax on #高亮
syntax off #关闭语法功能
Ctrl+o:临时变成命令模式(一次而已)
ctrl +n 自动补全 ctrl + p 也一样
启动 vim
在命令行窗口中输入以下命令即可 vim 直接启动 vim vim filename 打开 vim 并创建名为 filename 的文件
Vim 中自动补全括号,引号设置
vim ~/.vimrc 进入配置文件 在空白文件中加入下面语句保存,退出即可 inoremap ( ()<Esc>i inoremap [ []<Esc>i inoremap { {<CR>}<Esc>O autocmd Syntax html,vim inoremap < <lt>><Esc>i| inoremap > <c-r>=ClosePair('>')<CR> inoremap ) <c-r>=ClosePair(')')<CR> inoremap ] <c-r>=ClosePair(']')<CR> inoremap } <c-r>=CloseBracket()<CR> inoremap " <c-r>=QuoteDelim('"')<CR>
s/old/new/ 用 old 替换 new,替换当前行的第一个匹配
s/old/new/g 用 old 替换 new,替换当前行的所有匹配
Linux 中 V(Vim)常用命令使用说明
Linux 中V(Vim)常用命令使用说明在linux发行版中vi 命令已经软链接到了vim一、vi的三种工作模式:命令模式、末行模式、编辑模式1. 末行模式命令w:(write)保存q:(quit)退出,如果没有保存不允许退出q!:(quit)强行退出,不保存退出wq:(write&quit)保存并退出x:保存并退出:e:(edit)会打开内置浏览器浏览当前目录下的文件,后面加文件名就会打开该文件:n文件名:(new)新建文件:w文件名:(write)另存为,但是仍然编辑当前文件,并不会切换文件二、打开或新建文件说明:打开一个文件,文件不存在则新建一个文件命令:vi 文件名1. 打开文件并且定位行说明:打开一个文件并且定位到指定行数,不指定行数则定位到文件末尾命令:vi 文件名+行数三、常用命令(命令模式下使用)1. 重复次数在命令模式下,先输入一个数字再跟上一个命令,可以让该命令重复执行指定次数。
2. 移动和选择2.1 移动行间移动命令:行内移动命令:行数移动命令:屏幕移动命令:段落移动命令:vi中用空行来区分段落,在程序开发过程中,通常一段功能相关的代码会放到一起(一个段落)。
括号切换命令:标记命令:2.2 选择(可视模式)可视模式下,esc可退出可视模式,还可和移动命令连用,例如ggVG能够选中所有内容。
3. 编辑操作3.1撤销和恢复撤销3.2 删除文本如果使用可视模式已经选中了一段字符,那么使用d或者x都可以删除选中字符。
删除命令可以和移动命令连用,例如3.3 复制粘贴复制粘贴是在一个文本缓冲区,没有使用系统的剪切板,所有用其他软件ctrl + c/x 复制剪切到系统的剪切板,再到vi中p粘贴是不能粘贴系统剪切板的内容的。
如果想将系统剪切板的内容粘贴到vi中,需要进入编辑模式使用ctrl + v才能将内容粘贴。
vi中的删除操作本质上就是剪切,只是没有使用p粘贴。
4. 撤销和重复4.1 缩排和重复5. 查找和替换5.1替换R命令可进入替换模式,替换完后esc退出替换模式进入命令模式替换命令的作用就是在不用进入编辑模式,对文本进行轻量级修改。
linux--VIM命令大全
基础在文件中移动剪切、复制和粘贴搜索替换大小写读写文件文件浏览器和 Unix 系统交互对齐Tabs/Windows分屏显示自动完成Marks缩写文本缩进语法高亮插入模式下的命令:一般使用Vim时都在正常模式下,但如果知道几个专门用于插入模式下的快捷命令,会感觉更快捷一些。
参考:help insert-index,事实上插入模式下的自动补全功能,那个才真正给力。
调整缩进在插入模式下如果希望调整行的缩进,可以<Esc>返回正常模式,>或者<调整缩进,然后使用i或者a返回插入模式下,要按3次键,下面的组合键能够实现在插入模式下的缩进调整,每次调整一个shiftwidth宽度。
这个尤其用在写if之类的缩进结构时候,很方便。
CTRL+D 减少缩进CTRL+T 增加缩进复制相邻行的内容写东西的时候经常出现相邻两行的内容很想近的情况,你可以用复制粘贴功能,也可以直接一个字符一个字符地复制。
CTRL+Y 复制上一行的相同列的字符CTRL+E 复制下一行的相同列的字符举个实际的例子,比如一行内容是:num1 is 数字在这一行下方新增加一个空白行(插入模式下在行尾回车或者正常模式下按o),光标在num1的n正下方,这时候按3下<ctrl+y>,num被复制到当前位置,输入数字2后继续<ctrl+y>,空格和汉字也能够正确被一个一个地复制下来。
粘贴剪贴板在插入模式下<CTRL+R> {0-9a-z"%#*:=}能够插入剪贴板的内容,如果想临时查看各个剪贴板的内容,可以使用<ctrl+o>:reg<回车>,会显示出各个剪贴板的内容。
当然输入这个命令很麻烦,做个快捷键吧,把下面这句放到你的vimrc里面,当然F3可以换成其他功能键,这样你在插入模式下就可以按F3列出所有剪贴板的当前内容,然后<CTRL+R>剪贴板名称吧,这样做的好处是粘贴完仍然在插入模式下。
VIM中常用的查找、替换、删除模式总结
1,简单替换表达式去掉所有的行尾空格: %s/\s\+$//去掉所有的空白行:%s/\(\s*\n\)\+/\r/去掉所有的"//"注释:%s!\s*//.*!!去掉所有的"/*...*/"注释:%s!\s*/ \*\_.\{-}\*/\s*! !g删除DOS方式的回车^M :%s/r//g:%s= *$== 删除行尾空白::%s/^(.*)n1/1$/ 删除重复行::%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf::%s/<!--_.{-}-->// 又是删除多行注释(咦?为什么要说「又」呢?):g/s* ^ $/d 删除所有空行:这个好用有没有人用过还有其他的方法吗?:g!/^dd/d 删除不含字符串'dd'的行:v/^dd/d 同上(译释:v == g!,就是不匹配!):g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行:v/./.,/./-1join 压缩空行:g/^$/,/./-j 压缩空行2,简单删除命令ndw 或ndW 删除光标处开始及其后的n-1 个字符。
d0 删至行首。
d$ 删至行尾。
ndd 删除当前行及其后n-1 行。
x 或X 删除一个字符。
Ctrl+u 删除输入方式下所输入的文本。
^R 恢复u的操作J 把下一行合并到当前行尾V 选择一行^V 按下^V后即可进行矩形的选择了aw 选择单词iw 内部单词(无空格)as 选择句子is 选择句子(无空格)ap 选择段落ip 选择段落(无空格)D 删除到行尾x,y 删除与复制包含高亮区dl 删除当前字符(与x命令功能相同)d0 删除到某一行的开始位置d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)dw 删除到某个单词的结尾位置d3w 删除到第三个单词的结尾位置db 删除到某个单词的开始位置dW 删除到某个以空格作为分隔符的单词的结尾位置dB 删除到某个以空格作为分隔符的单词的开始位置d7B 删除到前面7个以空格作为分隔符的单词的开始位置d)删除到某个语句的结尾位置d4)删除到第四个语句的结尾位置d(删除到某个语句的开始位置d)删除到某个段落的结尾位置d{ 删除到某个段落的开始位置d7{ 删除到当前段落起始位置之前的第7个段落位置dd 删除当前行d/text 删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容dfc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容dtc 删除当前行直到下一个字符“c”所出现位置之间的内容D 删除到某一行的结尾d$ 删除到某一行的结尾5dd 删除从当前行所开始的5行内容dL 删除直到屏幕上最后一行的内容dH 删除直到屏幕上第一行的内容dG 删除直到工作缓存区结尾的内容d1G 删除直到工作缓存区开始的内容: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 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。
macOS终端中的文本编辑器命令
macOS终端中的文本编辑器命令在macOS终端中,有许多方便而强大的文本编辑器命令可供使用。
这些命令可以帮助我们快速、高效地编辑和处理文本文件。
本文将介绍一些常用的macOS终端中的文本编辑器命令,帮助您更好地利用终端进行文本编辑工作。
1. Vim命令Vim是一款功能强大的文本编辑器,被广泛用于终端环境中。
使用Vim命令,可以实现快速的文本编辑操作。
以下是一些常用的Vim命令:- i:进入插入模式,可以在光标当前位置插入文本。
- :wq:保存并退出Vim。
- :q!:不保存并退出Vim。
2. Nano命令Nano是一款易于使用的文本编辑器,特别适合对于终端文本编辑不熟悉的用户。
以下是一些常用的Nano命令:- Ctrl + O:保存文件。
- Ctrl + X:退出Nano。
- Ctrl + W:查找文本。
3. Sed命令Sed是一款强大的流式文本编辑器,可以用于在终端中对文本进行查找、替换等操作。
以下是一些常用的Sed命令:- sed 's/old/new/g' file:将文件中所有的"old"替换为"new"。
- sed '1,5d' file:删除文件中的第1行到第5行。
- sed '/pattern/d' file:删除文件中所有包含"pattern"的行。
4. Awk命令Awk是一款用于文本处理的强大工具,可以在终端中进行数据提取、分析等操作。
以下是一些常用的Awk命令:- awk '{print $1}' file:提取文件中每一行的第一个字段并打印。
- awk '{sum += $1} END {print sum}' file:计算文件中第一个字段的总和。
- awk '/pattern/ {print}' file:打印文件中所有包含"pattern"的行。
vim常用快捷键和命令
vim常⽤快捷键和命令vim编辑器上古神器,不记两个快捷键和命令,都不好意思出来写bug~常⽤操作常⽤快捷键i或a //进⼊可编辑的状态p //粘贴u //撤销ctrl + r //反撤销yy //复制光标所在的整⾏dd //删除当前⾏dG //删除所有⾏ (注意是同时按住d_shift_g)shift+d //删除当前⾏光标后的内容gg //光标到第⼀⾏GG //光标到最后⼀⾏00 //快速到⾏⾸shift+6 //快速到⾏⾸shift+4 //快速到⾏尾ctrl-f //下⼀页(forward)ctrl-b //上⼀页(backward):⾏号 //定位到指定⾏:命令窗输⼊⾏号/关键字 // 模糊查询:命令窗输⼊斜杠后接关键字即可(n查看下⼀个匹配,N查看上⼀个):set number //显⽰⾏号:set nonumber //隐藏⾏号查询操作主要是操作光标,快速定位到你需要的位置gg //光标到第⼀⾏GG //光标到最后⼀⾏00 //快速到⾏⾸shift+6 //快速到⾏⾸shift+4 //快速到⾏尾:⾏号 //定位到指定⾏:命令窗输⼊⾏号/关键字 //模糊查询:命令窗输⼊斜杠后接关键字即可(按下⼩写n查看下⼀个匹配):set number //显⽰⾏号:set nonumber //隐藏⾏号ctrl-f //下⼀页(forward)ctrl-b //上⼀页(backward)ctrl-e //下⼀⾏ctrl-y //上⼀⾏ctrl+d //下翻半页ctrl+u //上翻半页zz //让光标所杂的⾏居屏幕中央zt //让光标所杂的⾏居屏幕最上⼀⾏ t=topzb //让光标所杂的⾏居屏幕最下⼀⾏ b=bottom拷贝和粘贴yy //拷贝当前⾏nyy //拷贝当前后开始的n⾏,⽐如2yy拷贝当前⾏及其下⼀⾏。
p //在当前光标后粘贴,如果之前使⽤了yy命令来复制⼀⾏,那么就在当前⾏的下⼀⾏粘贴。
vim基本用法
vim基本用法Vim基本用法Vim是一款强大的文本编辑器,它可以在Linux、Unix、Mac OS X等多种操作系统中使用。
它的灵活性和高效性使得它成为程序员和系统管理员的首选工具。
在本文中,我们将介绍Vim的基本用法。
一、命令模式当你打开Vim时,你将进入命令模式。
在这个模式下,你可以使用各种命令来编辑文本。
以下是一些常用的命令:1.移动光标h:向左移动一个字符j:向下移动一行k:向上移动一行l:向右移动一个字符2.删除文本x:删除光标所在位置的字符dd:删除整行文本3.复制和粘贴文本yy:复制整行文本p:粘贴复制的文本4.撤销和恢复u:撤销上一步操作Ctrl + r:恢复上一步操作二、插入模式在命令模式下,你可以使用i、a、o等命令进入插入模式,以便输入文本。
以下是一些常用的命令:1.插入文本i:在光标所在位置插入文本a:在光标所在位置的下一个字符插入文本o:在光标所在位置的下一行插入文本2.退出插入模式Esc:退出插入模式三、可视模式在命令模式下,你可以使用v、V、Ctrl + v等命令进入可视模式,以便选择文本。
以下是一些常用的命令:1.选择文本v:选择字符V:选择整行Ctrl + v:选择矩形区域2.复制和删除文本y:复制所选文本d:删除所选文本四、末行模式在命令模式下,你可以使用:命令进入末行模式,以便执行一些高级操作。
以下是一些常用的命令:1.保存文件:w:保存当前文件2.退出Vim:q:退出Vim:q!:强制退出Vim3.保存并退出Vim:wq:保存当前文件并退出Vim以上是Vim的基本用法,你可以通过阅读Vim的帮助文档来了解更多高级用法。
使用Vim需要一定的学习成本,但一旦掌握了它,你将获得无与伦比的编辑体验。
linuxVIM指令
linux下的vim编辑器常用的一些用法操作举例并说明作用。
没有花里胡哨的概念介绍仅以实际的使用方法举例。
一、vim常用快捷键和实用操作vim打开文件方式:**用法1:vim /tmp/myshell.sh表示打开tmp目录下的myshell.sh文件,不存在则创建一个,默认光标会定位到上次所在位置和高亮上次高亮的内容。
用法2:vim +10 /tmp/myshell.sh表示打开tmp目录下的myshell.sh文件并且将光标移动到第10行。
用法3:vim +/hello /tmp/myshell.sh表示打开tmp目录下的myshell.sh文件并且高亮显示文件里所有的hello内容。
用法4:vim /tmp/myshell.sh /home/my.sh /root/a.txt 表示同时打开tmp目录下的myshell.sh、home目录下的my.sh和root目录下的a.txt文件。
vim常用的三种模式:命令模式、编辑模式、末行模式(尾行模式)1.命令模式[命令模式下无法编辑文件,只允许删除,复制,粘贴,撤销,使用快捷键等操作,文件打开时默认进入此模式]光标移动操作:特别技巧:数字+上下左右按键可以向对应方向移动光标到指定位置,如:5+向上键表示是向上移动光标5行。
用法1:shift+6或^表示移动光标到所在行的行首位置。
用法2:shift+4或&表示移动光标到所在行的行尾位置。
用法3:gg表示将光标移动到文件内容的第一行位置,这里注意是小写字母。
表示将光标移动到文件内容的最后一行位置,这里注意是大写字母。
用法5:5G表示将光标移动到文件内容的第5行位置,这里注意是大写字母。
用法6:ctrl+b或pg up表示向上翻屏。
用法7:ctrl+f或pg dn表示向下翻屏。
复制、删除、粘贴、撤销操作:用法1:yy表示复制光标所在行的整行内容。
用法2:5yy表示复制包含光标所在行向下的5行内容。
linux下vim常用命令多行注释和多行删除
linux下vim常⽤命令多⾏注释和多⾏删除1.多⾏注释:
1. ⾸先按esc进⼊命令⾏模式下,按下Ctrl + v,进⼊列(也叫区块)模式;
2. 在⾏⾸使⽤上下键选择需要注释的多⾏;
3. 按下键盘(⼤写)“I”键,进⼊插⼊模式;
4. 然后输⼊注释符(“//”、“#”等);
5. 最后按下“Esc”键。
注:在按下esc键后,会稍等⼀会才会出现注释,不要着急~~时间很短的
2.删除多⾏注释:
1. ⾸先按esc进⼊命令⾏模式下,按下Ctrl + v, 进⼊列模式;
2. 选定要取消注释的多⾏;
3. 按下“x”或者“d”.
注意:如果是“//”注释,那需要执⾏两次该操作,如果是“#”注释,⼀次即可
3.多⾏删除
1.vim ⽂件名,⾸先在命令模式下,输⼊“:set nu”显⽰⾏号;
2.通过⾏号确定你要删除的⾏;
3.命令输⼊“:32,65d”,回车键,32-65⾏就被删除了,很快捷吧
如果⽆意中删除错了,可以使⽤‘u’键恢复(命令模式下)。
vim常用命令操作图
保存
左下上右键 hjk
$光标到行尾 0光标到行首 G光标到文档最后一行 gg光标到文档第一行 nG/:n<Enter>光标到文档第n行 n<Enter>向下移动n行 n<space>向后移动n字符 向上翻页PageUp/Ctrl+b 向下翻页PageDown/Ctrlet nonu取消行号 :r filename把filename文件里的内容插入到当前光标所在位置下 :!command 暂时离开vim,执行command命令
搜索
/str 从光标位置向下搜索str ?str 从光标位置向上搜索str n 找下一个 N 找上一个
vim
替换
:%s/abc/123/g 把abc全部替换成123 :%s/abc/123/gc 同上,但要用户一个个确认是否替换
撤销
u退回前一个动作 Ctrl+r重复前一个动作 :e! 文档还原到最原始状态
其他操作
复制/粘贴/删除
yy复制当前行 nyy复制从当前行开始的n行 p粘贴到下一行 P粘贴到上一行 D当前光标开始删除到行尾 dd删除当前行 ndd从当前行开始向后删除n行 d1G删除第1行到当前行的数据 dnG删除第n行到当前行的数据 dG删除当前行到最后一行的数据 x向后删除1个字符 nx向后删除n个字符 X向前删除1个字符
块操作
v字符选择 光标经过的字符被选中 V行选择 光标经过的行被选中 Ctrl+v块选择 矩阵方式选中 y复制被选中的数据 d删除被选中的数据
多文件编辑
vim file1 file2同时编辑两个文件file1和file2 :files列出vim当前打开的文件列表 :n编辑下一个文件 :N编辑上一个文件
多窗口操作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VIM常用命令
进入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 :光标右移一个字j至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落开头
{:光标移至段落结尾
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个字
do:删至行首
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u:删除输入方式下所输入的文本
搜索及替换命令 :
/jh/4/119327.html
/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的输出结果放到当前行。