4.21周五 vi编辑器.note

noteId: E8BFD2E28CC6438383610FDAB7D74220 · 原始路径:/ALL/Linux - A模块/课堂笔记/4.21周五 vi编辑器.note · 图片:4 · 附件待处理:0

VI是命令行中的一个文本编辑器
 
gedit //文本编辑器,类似于Windows的记事本
脚本开始:
#! /bin/bash
 
没有图形界面时,使用vim
vim是vi的高级界面
若是最小化安装的系统,则只会有vi,没有vim
 
查看一个命令是否存在:which
 
VIM两种用法:
打开一个不存在的文件,左下角显示new,保存后会自动创建
 
VIM用来在命令行中编辑文档
 
VIM的三种模式:
1、命令模式(普通模式):
进入VIM命令模式:
VIM 【文件名】
进入编辑模式快捷键:
i,a,o,O
 
2、编辑模式
使用“ / ”搜索
也可以使用“?”搜索
按“n”向下搜索,按大写“N”,向上搜索
编辑模式退出到命令模式:ESC键
 
3、末行模式
使用冒号“:”
能够输入:
q //不保存退出
wq //保存退出
 
常用快捷键:
1、命令模式:
h、j、k、l
 
39加大写G来到第39行
第一行:gg 两个小写g
最后一行:G 一个大写G
去到行首用0或者^
去到行尾$
删除:dd 两个d
删除5行:5dd
删除所有:dG 一个小d 大写G
删除光标后的内容:d$/d0
删掉一个单词:dw
删掉一个字母:x
 
复制和粘贴:
复制:yy
粘贴:p
ygg
 
 
撤销和重做:
撤销一次操作:u
恢复一次:Ctrl + r
 
替换:
替换一次:r
替换模式:R
 
2、编辑模式:
ins/i等键进入
编辑模式没有快捷键
ESC退回到命令模式
 
 
3、末行模式:
“:”进入末行模式
:w    //保存
:wq    //保存退出
:q    //不保存退出
:q!    //强制不保存退出
:x    //保存退出
加!等于强制保存退出
:w 【路径/名字】    //另存为
 
:1!    //复原到保存之前
:127,$ w man_backup.cof    //将从127行到末尾保存到另一个文件
n1,n2 w 【另一个文件】    //支持保存部分
或n1,$
 
末行模式下的搜索和替换:
/或? 【想要搜索的内容】   //进行搜索
:%s/share/8888/    //将share替换成8888,但只会替换每一行的第一个
:%s/share/8888/g    //将每一行的所有share都替换成8888
:%s/share/8888/gc    //替换每一行的所有,c表示每遇到一个都需要手动确定是否替换
:1,10s/man/8888/g    //将1到10行的所有man都替换成8888
n1,n2或$s/man/8888/g
:%s/\<old\>/new/g
在一定程度上支持正则表达式
 
 
#set
:set nu
:set nonu
:set nohlsearch    //
:set autoindent    //自动对齐
:set noautoindent    //关闭自动对齐
:set tabst
:set ruler
:set ignorecase     //忽略正则表达式中的大小写
:set noignorecase
:set mouse-=a
:set tabstop=4
:r anothor_file    //读取其他文件
:! 【命令】
:r ! 【命令】
:sh    //进入到bash编辑,使用(exit)才能够退出
 
visual模式 - 使用鼠标框选
Ctrl + V进入模式,
进行操作,
y c p
d
x
shift + i
ESC退出,然后相同的都会被替换
使用:
:set mouse=a
关闭visual
 
vim /usr/share/vim/vim82/debian.vim //设置vim专属的参数
 
 
窗口的分割:
要同时编辑两个文件时,可以进行窗口分割
在前面加一个 -O,就会有两个窗口
vim -o file1.txt file2.txt //水平分割;-O //垂直分割
Ctrl + w //在窗口之间切换(按两次Ctrl + w)
Ctrl +ws //快捷分割
 
在vim编辑时退出,若修改了文件,再次进入会有一些错误提示,有一些选项
o //只读模式
r //恢复
d //将缓存文件删除
哪怕选择了,只后打开还是会提示,需要删除缓存文件,才不会提示