vim/vi文本跳转操作快捷:
- 跳到文本的最后一行:按“
G”,即“shift+g”。 - 跳到文本的第一行的第一个字符:按两次“
g”。 - 跳到当前行的最后一个字符 :在当前行按“
$”键,即“shift+4”。 - 跳到当前行的第一个字符:在当前行按“
0”。
vi编辑器中的替换命令
在vi或vim编辑器中,可以使用替换命令来修改文本内容。替换命令的基本语法是:[range]s/pattern/replacement/[flags]。
:%s/weblogic/weblogic11g/g
这个命令会替换整个文件中所有出现的"weblogic"为"weblogic11g":
%表示整个文件范围s表示替换操作/weblogic/是要查找的模式/weblogic11g/是替换后的文本g标志表示替换行中所有匹配项,而不仅仅是第一个
在Linux环境下,如果直接使用VI/VIM命令编辑没有修改权限的文件时,保存的时候就会提示用户无法进行保存操作,一般的解决方法只能是关闭文件重新以sudo权限打开该文件编辑后再保存(前提是用户具有sudo权限)。其实,在VI/VIM模式下通过一些简单的命令,就能在不关闭当前文件的情况下达到保存文件的目的。
方法一
关于%! sudo tee % > /dev/null这条命令的说明如下
此命令是把当前文件(即%)作为stdin传给sudo tee命令来执行。
方法二
在Linux上工作的朋友很可能遇到过这样一种情况,当你用Vim编辑完一个文件时,运行:wq保存退出,突然蹦出一个错误:
E45: ‘readonly’ option is set (add ! to override)
这表明文件是只读的,按照提示,加上!强制保存::w!,结果又一个错误出现:
“readonly-file-name” E212: Can’t open file for writing
文件明明存在,为何提示无法打开?这错误又代表什么呢?查看文档:help E212:
For some reason the file you are writing to cannot be created or overwritten.
The reason could be that you do not have permission to write in the directory
or the file name is not valid.
