vim编辑技巧
vim [/目录/]文件名
vim /mnt/haxi.txt
若目标文件不存在,则新建空文件并编辑。
若目标文件已存在,则打开此文件并编辑。
三个模式:编辑/输入/插入模式、命令模式、末行模式
模式切换方式:从编辑进入命令[Esc]
从命令进入末行[:]
从命令进入编辑[i]
从编辑进入末行[Esc][:]
保存退出:先进入末行模式,输入wq,然后回车
命令模式快捷命令:
o 另起一行插入
i 当前行插入
dd 剪切当前行
yy 复制当前行
p 另起一行粘贴
u 撤销
-----------------------------------------------------------------------
命令模式下的操作:
移动光标:
键盘上下左右键 到相应位置
Home 键 或 ^ 或数字0 跳到行首
End 键 或 $ 跳到行尾
行间跳转:
1G 或 gg 到全文的第1行
G 到全文的最后1行
10G 到全文的第10行,10也可以写成其他数字
复制/粘贴
yy、#yy 复制1行、#行
3yy 复制3行
p、P 粘贴到光标处之后、之前
删除
x 或 Delete键 删除光标处的单个字符
dd、#dd 删除1行、#行
3dd 删除3行
d^ 从光标处之前删除到行首
d$ 删除到行尾
C(大写) 删除光标之后到行尾,并且进入输入模式
撤销
u 撤销最近的一次操作
Ctrl + r 取消前一次撤销操作(反撤销)
查找关键词:
/word 向后搜索字符串“word”
n、N 跳至后/前一个结果
-----------------------------------------------------------------------
末行模式下的操作:
ZZ(大写) 或 wq 保存修改并退出
q! 放弃已有更改后强制退出
r /etc/filesystems 读入其他文件内容
echo abc > /opt/a.txt
echo 123 > /opt/1.txt
vim /opt/a.txt
:r /opt/1.txt #读入/opt/1.txt文件内容
:r /etc/fstab #读入/etc/fstab文件内容
字符串替换
:s/旧/新 替换当前行的(第一个)旧词
:s/旧/新/g 替换当前行的(所有)旧词
:1,11 s/旧/新/g 替换(第1-11行)的所有旧词
:% s/旧/新/g 替换文件内所有的旧词
cp /etc/passwd /opt/test #复制后,再修改/opt下的该文件
vim /opt/test
开关参数的控制
:set nu|nonu 显示/不显示行号
:set ai|noai 启用/关闭自动缩进
---------------------------------------------------------------------------
vim 交互式编辑器 sed 非交互式编辑器
----------------------------------------------------------------------------
vim常见问题:
如果vim文件时出现有缓存文件.swp的报错,就删掉相应的缓存文件
rm -rf 文件名路径(/上级目录/.文件名.swp)
如:rm -rf /etc/.bashrc.swp
利用vim 修改文件/opt/abc/1.txt,保存并退出时提示信息如下:“/opt/abc/1.txt" E212: 无法打开并写入文件。请按 ENTER 或其它命令继续”
原因有哪些?
答案:
1.对该文件没有权限
2.路径/opt/abc不存在
3.文件系统只读
原文:https://www.cnblogs.com/summer2/p/10787799.html