vi 常用命令

==================
vi command
==================
vi a.txt 用vi编辑器编辑a.txt,如果不存在则建立空文件,默认是一般模式;
---
a(光标后) i(光标前) r(替换光标字符) o(下一行) A(行尾) I(行首) R(同r) O(上一行) 都可从 一般模式 进入 编辑模式

---
Esc 可以从 编辑模式 进入 一般模式
---
: 从 一般模式 进入 命令模式,输入取消、保存等指令
---
/ 从 一般模式 进入 命令模式,可以进行搜索;
---
wq 命令默认下,保持文件,并退出;
q 命令默认下,退出;
q! 命令默认下,取消对文件的修改,并退出;
---

=========
一般模式
=========
h 或 左箭头 左
j 或 下箭头 下
k 或 上箭头 上
l 或 右箭头 右

---
ctrl+f 向前翻页
ctrl+b 向后翻页
ctrl+d 向前翻半页
ctrl+u 向后翻半页
---
0 或 home 移动到该行第一个字符
$ 或 end 移动到该行最后一个字符
n<space> 向右移动n个字符
---
G 移动到最后一行
[i] gg 移动到第 i 行,省略 i 则移动到第1行,
n<Enter> 向下移动n行
---
={motion} apply motion to specify lines, the default motion is indenting,
e.g.
gg=G apply indenting to whole file,
---
w 后1个单词 词首
e 后1个单词 词尾,(当前如果在单词中,且不是词尾,则到当前单词的词尾,)
b 前1个单词 词首
---
/word 向下搜索 word
?word 向上搜索 word
---
x 向后删除1个
3x 向后删除3个
X 向前删除1个
4X 向前删除4个
---
dd 删除/剪切 整行
3dd 删除/剪切 包括当前行向下的3行

dw 删除/剪切 单词
3dw 删除/剪切 当前向右的3个单词

d光标移动 删除/剪切 光标移动的 字符 或 行,输入d 然后移动光标,如果光标向左则删除左边的1个字符,向右则删除当前字符(相当于 x),向上则删除当前行和上一行,向下则删除当前行和下一行,跳转行则删除2行之间(包括2行)的所有行,

---
yy 复制所在行
3yy 包括当前行复制向下3行

yw 复制 光标之后的第1个单词,光标当前所在单词仅复制光标及其后的部分(而不是整个单词),光标后的第1个空白符也被复制(如果存在),
3yw 复制 光标之后的3个单词,
---
p 粘贴在当前行下
P 粘贴在当前行上
---
u undo
ctrl + r redo
---
:i 跳转到第 i 行
---
ctrl + shift + >> shift right current line
2 ctrl + shift + >> shift right 2 line
ctrl + shift + << shift left current line
2 ctrl + shift + << shift left 2 line

=========
一般模式 ---> 编辑模式
=========
i 在当前光标前插入字符
I 在当前行首前插入字符
---
a 在当前光标后插入字符
A 在当前行尾插入字符
---
o 在当前行 下 新开一行,插入字符
O 在当前行 上 新开一行,插入字符
---
r,R 准备替换当前字符,替换后仍回到一般模式

=========
编辑模式 ---> 一般模式
=========
Esc 退出编辑模式,进入一般模式
---

=========
一般模式 ---> 命令行模式
=========
: 进入命令行模式
---

=========
命令行模式
=========
w 保存
w! 强制保存,即使是只读文件,只要用户的权限够,就可以保存
q 退出vi,如果文件已经改变且尚未保存则报错;
q! 取消修改,并退出vi
wq 保存并退出
wq! 强制保存并退出
---
w b.txt 当前文档另存为b.txt
---
r c.txt 将c.txt的内容加入到 当前文档中 光标处,
---
set nu 显示行号
set nonu 取消行号
---
set ai 自动缩进
set noai 不自动缩进
---
set list 显示 tab 和 行尾 字符, tab 用 ^I 表示,行尾用 $ 表示,
set nolist 不显示 tab 和 行尾 字符,
---
set tablestop=x 设置 tab 的大小,
---
set all 查看 当前设置
---
help [command] 显示帮助,用 :q 退出帮助

---
n 切换到下个文件
e# 切换到上个文件
---
[a,b|% ]s/xx/yy[/gic]
将 xx 替换为 yy,
a b 分别指定 起始 和 结尾 行号,如果未指定则默认对当前行起作用, . 表示当前行, $ 表示末行, % 表示所有行
g 表示替换所有的匹配,如果 未指定 g 则仅替换每行中的第1个匹配,
i 表示忽略大小写,如果 未指定 i 则大小写敏感,
c 表示是否对每次替换进行确认,如果指定 c,则每个匹配的替换要确认,输入 y 或 n 确认,
支持通配符,特殊字符要用 \ 转义,如 \. ,

例子:
s/xx/yy 将当前行中 第1个 xx 替换为 yy
10,$ s/xx/yy 从第10行 到末尾,将每行中 第1个 xx 替换为 yy
% s/xx/yy/g 所有行中 所有的 xx 替换为 yy
% s/\./y/g 所有行中 所有的 . 替换为 y
% s/\ \+/\ /g 替换所有的连续空格为1个空格,
% s/tesT/abcdef/gi 替换所有 test(不区分大小写),
% s/test/abcdef/gc 替换所有 test,每次替换都要求确认,

=========
一般模式 ---> 搜索模式
=========
/ 向下搜索
? 向上搜索
n 下一处
shift+n 上一处

---
标题基于SpringBoot+Vue的社区便民服务平台研究AI更换标题第1章引言介绍社区便民服务平台的研究背景、意义,以及基于SpringBoot+Vue技术的研究现状和创新点。1.1研究背景与意义分析社区便民服务的重要性,以及SpringBoot+Vue技术在平台建设中的优势。1.2国内外研究现状概述国内外在社区便民服务平台方面的发展现状。1.3研究方法与创新点阐述本文采用的研究方法和在SpringBoot+Vue技术应用上的创新之处。第2章相关理论介绍SpringBoot和Vue的相关理论基础,以及它们在社区便民服务平台中的应用。2.1SpringBoot技术概述解释SpringBoot的基本概念、特点及其在便民服务平台中的应用价值。2.2Vue技术概述阐述Vue的核心思想、技术特性及其在前端界面开发中的优势。2.3SpringBoot与Vue的整合应用探讨SpringBoot与Vue如何有效整合,以提升社区便民服务平台的性能。第3章平台需求分析与设计分析社区便民服务平台的需求,并基于SpringBoot+Vue技术进行平台设计。3.1需求分析明确平台需满足的功能需求和性能需求。3.2架构设计设计平台的整体架构,包括前后端分离、模块化设计等思想。3.3数据库设计根据平台需求设计合理的数据库结构,包括数据表、字段等。第4章平台实现与关键技术详细阐述基于SpringBoot+Vue的社区便民服务平台的实现过程及关键技术。4.1后端服务实现使用SpringBoot实现后端服务,包括用户管理、服务管理等核心功能。4.2前端界面实现采用Vue技术实现前端界面,提供友好的用户交互体验。4.3前后端交互技术探讨前后端数据交互的方式,如RESTful API、WebSocket等。第5章平台测试与优化对实现的社区便民服务平台进行全面测试,并针对问题进行优化。5.1测试环境与工具介绍测试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值