vim快捷键到行尾
一、vim进入编辑模式
编辑模式:一般模式下不可以修改某个字符,若要修改字符,只能进入编辑模式。从一般模式进编辑模式,只需按i、I、a、A、o、O、r和R中某个键即可。当进入编辑模式时,在屏幕尾部会显示INSERT或REPLACE字样(若你的centos支持中文,则会显示“插入”)。从编辑模式回到一般模式,按esc即可。
i:在当前字符前插入。
I:在光标所在行的行首插入。
a:在当前字符后插入。
A:在光标所在行的行尾插入。
o:在当前行的下一行插入新的一行。
O:在当前行的上一行插入新的 一行。
二、vim命令模式
命令模式:输入:或者/即可进入命令模式。该模式下,可以搜索字符或字符串,可以保存、替换、退出、显示行号等操作。/word:在光标之后查找一个字符串word,按n向后继续搜索,shift+n向上搜索。
?word:在光标之前查找一个字符串word,按n向后继续搜索。
搜索出来的字符串都会高亮显示,若想不高亮,输入:nohl。
:n1,n2s/word1/word2/g:在n1和n2行之间查找word1并替换为word2,不加g则只替换每行的第一个word1。(先起点然后逗号分隔,再终点s表示替换/需替换的/替换后的/g表示全部。$表示到最末端)
:1,$s/word1/word2/g:将文档中所有的word1替换为word2,不加g则只替换每行的第一个word1。
vim到行末尾
退出方法: 如果是输出状态,首先按Esc键退出输入状态,然后按Shift+“;”,再输入q!或wq!(不保存改动,wq!是保存文件的写入修改)退出。 补充: 只要按住shift键盘,下面的这些命令都可以用:
1、如果你想编辑某个文档,可以直接编辑的如:你有文档AA,可以用vi AA 【注意:必须在AA所在的目录下】。
2、如果没有文档,而且你又想编辑就可以直接编辑vi aa【名字你可以随便命名】。
3、也可以先建立一个文档touch aa ,然后再编辑vi aa。
4、编辑器有三种模式:
1、命令行模式 2、末行模式 3、输入模式。
5、按Esc 就可以进入命令行模式,也是系统默认模式。
6、输入模式可以按 o i a 都可以进入,退出可以进入末行和命令行模式。
7、末行模式可以按ctrl+;它的主要功能是退出编辑器,也可以保存退出文档。 8、q! 【强制退出不保存】,q【退出不保存】,wq【退出并保存后面也可以加个!】。
9、在输入模式和命令行模式命令很多。
10、如复制(yy)、粘贴(p)、删除(d)等等。
vim g命令移动到行尾
“在括号中输入完某些数据后,想输入下一行代码时候,需要把手移到(上、下、左、右)的箭头去移动光标位置再回车”也就是说,以上操作是在 insert 模式完成的对吧?然而在 vim 中 normal 模式才是常态(不然为什么叫 "normal")。
要换行的话,最好的方法是按下 esc 或 ctrl + [ 回到 normal 模式,再用 o/O 在下方/上方插入新行。至于你在另一个回答下提到行尾插入冒号的问题,在 normal 模式下用 A 也可以轻松定位。
再说一点,频繁用 esc 返回 normal 模式确实比较麻烦。最好交换左 ctrl 和 capslock 的键位,然后用 ctrl + [ 。一般 linux 桌面环境都可以直接设置。如果你用的桌面环境不支持,也可以用 xmodmap 命令
vim调到首行的快捷键
先用vim查看 在命令行模式下输入set nu光标移到想删除的首行想删除几行就用数字几之后按dd(想删除9行就9dd)如果删除不对按u键恢复希望能帮到你
vim 到行尾
现在我来回答自己的提问。经过查阅一些资料,我找到了四种解决办法,并在我的博客上写了一篇总结:
在文本每一行的行首和行尾都插入特定的相同字符或文本
,现转载如下:办法一:notepa++的列编辑
先说在每行行首插入相同文本的办法。首先把原始文本粘贴到notepa++里,然后事先复制好你要重复输入的字符123abc,然后把光标移到第一行第一列,也就是“床”的前面,然后按住ALT键,鼠标从第一行直接拉到最末行,然后就看到光标变长了,最后直接ctrl+v粘贴即可。然后把光标移到第一行的末尾,就可以用列编辑在每行行尾插入重复文本了。
办法二: notepa++正则表达式替换
把原始文本粘贴到notepa++里后,搜索,替换,查找目标里输入^,替换为里输入123abc,注意:下方的查找模式里要选择“正则表达式”,最后点击“全部替换”就能看到效果了。
行尾操作也类似,查找目标里输入$,替换为里输入456xyz即可。
^匹配行首,而$匹配行尾。
办法三:gVIM命令
如果你使用vim,那么下面的命令可以让你在每行快速插入重复字符。每行的行首都添加自定义的文本或字符串:
每行的行尾都自定义的文本或字符串
例如要在每行行尾输入456xyz,可以先打冒号,然后直接ctrl+v或者用手势粘贴%s/$/456xyz即可。
另一个在每行行首插入相同字符的办法,这是在国外网站上发现的:先调光标到第一行的行首,然后按Ctrl+Q选择列,然后按j选择多列,然后按Shift+i,然后输入你要像插入的字符串,最后按Esc就OK了。
办法四:excel的CONCATENATE函数
先复制原始txt文档,然后新建一个excel,在B1单元格右键,粘贴,然后在A1中输入123abc,下拉复制;同样在C1中输入456xyz,下拉复制。然后在D1中输入=CONCATENATE(A1,B1,C1),回车即可把A1B1C1连起来,最后下拉就完成了。其中=CONCATENATE(A1,B1,C1)命令等同于=A1&B1&C1,当元素少的时候,使用&比较简便。
参考:
Notepad++的列编辑功能
vim 每行行首或行行尾插入相同字符串
How do I insert text at beginning of a multi-line selection in vi/Vim?
Excel中concatenate函数的使用方法
vim跳到行首行尾
在normal模式下按下/即可进入查找模式,输入要查找的字符串并按下回车。
Vim会跳转到第一个匹配。按下n查找下一个,按下N查找上一个。
Vim查找支持正则表达式,例如/vim$匹配行尾的"vim"。 需要查找特殊字符需要转义,例如/vim\$匹配"vim$"。
实战一下:
1、用vim打开要查找的文件
2、在normal模式下/即可进入查找模式,输入要查询字符串
3、光标停留在loop上
4、按下n会查找下一个,注意光标
更多命令:
注意,如果没有安装vim,系统会提示安装语句,复制运行即可安装vim
参考资料:
vim快速到行尾
光标定位G 移至行行首nG 移至第n行行首n+ 移n行行首n- 移n行行首n$ 移n行(1表示本行)行尾0 所行行首$ 所行行尾^ 所行首字母h,j,k,l 左移移移右移H 前屏幕首行行首M 屏幕显示文件间行行首L 前屏幕底行行首更参考原文移行道两0 ^ (shift+6)行首第字符空白字符点区别移行尾 $ (shift+4)
vim删除一行的快捷键
Ctrl + a 光标移动到行首(Ahead of line),相当于通常的Home键
Ctrl + e 光标移动到行尾(End of line)
Ctrl + c 取消(cancel)当前行输入的命令
Ctrl + l 清屏,相当于执行clear命令
Ctrl + p 调出命令历史中的前一条(Previous)命令,相当于通常的上箭头
Ctrl + n 调出命令历史中的下一条(Next)命令,相当于通常的上箭头
Ctrl + u 删除光标之前到行首的字符
Ctrl + k 删除光标到行尾的字符
Ctrl + w 删除从光标位置前到当前所处单词(Word)的开头
Ctrl + y 粘贴最后一次被删除的单词
Ctrl + r 显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
Option+← 光标单词间移动(向左)
Option+→ 光标单词向右移动
vim编辑快捷键
删除和删除多行的快捷键,要在默认模式下使用。在编辑模式下可以按esc,退出编辑模式。
然后输入以下指令
光标移动
移动到行尾"$",移动到行首"0"(数字)
移动到段首"{",移动到段尾"}"
移动到下一个词"w",移动到上一个词"b"
移动到文档开始"gg",移动到文档结束"G"
跳到第n行"ngg" 或 "nG" 或 ":n"
移动光标到屏幕顶端"H",移动到屏幕中间"M",移动到底部"L"
移动到上次编辑文件的位置 "`"
批量删除:
D 删除当前光标所在位置到某一行的结尾
d$ 删除当前光标所在位置到某一行的结尾
dd 删除当前所在行
5dd 删除从当前行至其后的5行内容
dL 删除当前位置到屏幕上最后一行的内容
dH 删除当前位置到屏幕上第一行的内容
dG 删除当前位置到工作缓存区结尾的内容
d1G 删除当前位置到工作缓存区开始的内容
分类: shell编程学习
vim行尾添加字符
跳到文件头:gg
跳到文件尾:G
代替箭头键的←↓↑→:h j k l
跳到光标的上次位置:Ctrl+O、Ctrl+I
跳到当前行的行首:HOME、0、^
跳到当前行的行尾:END、$
跳到当前行的下n行行尾:n$
跳到屏幕的顶上、中间、下方:H M L
跳到指定行:nG、ngg
跳到下一个单词的开始:w
跳到上一个单词的开始:b
跳到单词的结束:e