退出vi
q 在没有修改的情况下可以,如果修改了文件的内容会报错
q!
wq!
wq
ZZ(:wq)命令
ZQ (:q!)命令
v 删除文本
删除一个字符:
• x、X
删除单词:
• dw、de
删除一行:
• dd、D(d$)、d0(d^)
删除多行:
• ndd
• dG
• dgg
v 删除行的部分内容:
§ 将光标放置到该行要保存部分的右边,并输入D。为删除光标左边的所有内容,须将光标放置到该行要删除部分的右边,并输入d0(d-零)。
v 删除到文件的结尾:
§ 为删除从当前行到文件结尾的所有内容,需输入dG
v 复制和移动文本
§ 复制:
• y
§ 剪切:
• d
§ 粘贴:
• p
v 撤销和重做
§ 撤销:
• u、U
§ 在最后一个命令之后立即输入u来撤消该命令撤消对一行的更改:
§ 输入U来撤消你对一行所做的所有更改
§ 这个命令只有在你没将光标移动到该行以外时才生效
§ 重做:
• Ctrl+r 或用.
v 插入文本
§ 追加:
• a、A
§ 插入:
• i、I
§ 插入新行:
• o、O
§ 删除并插入新行:
• s删除光标所在的字符并插入、S删除一整行并插入、C (c$)删除当前光标到行尾并插入、cG c0 cgg cG
v 查找字符串
§ 使用 / 查询 向下查
§ 使用 ? 查询 向上查
§ 使用n、N跳转
v 向左移动一个字符:按h
v 向右移动一个字符:按l
v 向下移动一行:按j
v 向上移动一行:按k
v 移动到当前行的开头处:按 ^ (即Shift-6)
v 移动到当前行的结尾处:按 $ (即Shift-4)
v 移动到顶部:按H(大写)使光标移动到屏幕的顶部
v nH 将光标移到屏幕的第 n 行
v 2H 将光标移到屏幕的第 2 行
v 移动到中部:按M(大写)使光标移动到屏幕的中间
v 移动到底部:按L(大写)使光标移动到屏幕的底部
v nL 将光标移到屏幕的倒数第 n 行
v 3L 将光标移到屏幕的倒数第 3 行
v 向前翻页一屏:要向前滚动(向下移动)一整屏,需按下Ctrl-f。光标将移动到新屏的左上角
v 向后翻页一屏:要向后滚动(即向上移动)一整屏,需按下Ctrl-b
v 文件另存为
§ :write /root/newfile
§ :w /root/newfile
v 取消高亮
§ :nohl
v nG ——n为行数,该命令立即使光标跳到指定行/:n
v r 在当前光标处替换
v R 进入替换模式esc退回命令模式
v J 合并两行
v :set number(nu) 显示行号
v : set nonumber (nonu) 不显示行号
v v 字符选中命令 V 行选中命令
v x/del 在命令模式下删除一个字符
v X 给文件设密码
v gg 将光标定位到文件的第一行
v G 将光标定位到文件的最后一行
v vi /etc/passwd /etc/passwd 同时打开两个文件,用:next切换两个文件,无法返回
v vi -o /etc/passwd /etc/shadow 水平打开两个文件 ^+w在两个窗口间来回切换
v vi -O /etc/passwd /etc/shadow 垂直打开两个文件 ^+w在两个窗口间来回切换
v 在一行内替换头一个字符串old为新的字符串new
§ :s/old/new
v 在一行内替换所有的字符串old为新的字符串new
§ :s/old/new/g
v 在两行内替换所有的字符串old为新的字符串new
§ :#,#s/old/new/g
v 在文件内替换所有的字符串old为新的字符串new
§ :%s/old/new/g
v 进行全文替换时询问用户确认每个替换需添加c选项
§ :%s/old/new/gc
转载于:https://blog.51cto.com/sngyqd/394243