Linux 基础-3

vi/vim

Linux 系统中配置文件以文本文件形式保存,用户通过编辑配置文件来管理系统。vi 是一种文本编辑器,vim 则是 vi 的加强版本,用户可以使用 vi/vim 编辑文件内容

语法

vi [arguments] [file ..]
vim [arguments] [file ..] 
# -b 以二进制模式打开文件,用于编辑二进制文件和可执行文件
# -R 以只读方式打开文件

执行命令后会进入文本编辑器界面,并处于命令模式。vi/vim 共有三种模式 : 命令模式、输入模式、末行模式。切换模式的方法如下 :

命令模式

可以移动光标、复制粘贴、删除字符等,此状态下敲击键盘动作会被识别为命令,而非输入字符。常用操作如下 :

功能键作用
i
I
a
A
o
O
切换到输入模式,在光标当前位置开始输入文本
切换到输入模式,在该行第一个字符前开始输入文本
切换到输入模式,在光标下一个位置开始输入文本
切换到输入模式,在该行最后的字符后开始输入文本
当前行的下方插入一个新行,并进入输入模式
当前行的上方插入一个新行,并进入输入模式
:切换到末行模式,在最底一行输入命令
/
?
文本查找操作,用于从当前光标所在位置开始向文件尾部查找指定字符串的内容,查找的字符串会被加亮显示
文本查找操作,用于从当前光标所在位置开始向文件头部查找指定字符串的内容,查找的字符串会被加亮显示
←↓↑→
hjkl
移动光标
(h) 向左、(j) 向下、(k)向上、(l) 向右移动光标
home
^
0
移动到这一行的最前面字符处
end
$
移动到这一行的最后面字符处
Page Down
组合键 : ctrl+f
向下翻动一页
Page Up
组合键 : ctrl+b
向上翻动一页
G
1G
nG
gg
光标移动到最后一行
光标移动到第 1 行
光标移动到第 n 行
光标移动到第一行
gg光标移动到第一行
n
N
光标移动到下一个搜索
光标移动到下一个搜索结果
x
del
删除光标位置的一个字符
X
backspace
删除光标前的一个字符
dd
ndd
剪切光标所在的一行
剪切光标所在的向下 n 行
yy
nyy
复制光标所在的一行
复制光标所在的向下 n 行
p
P
将已剪切/复制的内容在光标下一行贴上
将已剪切/复制的内容在光标上一行贴上
u撤销上一个动作
组合键 ctrl+r重做上一个动作
ZZ
ZQ
保存内容并退出编辑器
不保存并强制退出编辑器

输入模式

进入输入模式后,能直接将字符输入到文件内。该模式下方会出现 -INSERT- 的字样,那就是可以输入任意字符的提示。常用操作 :

功能键作用
ESC返回命令模式
backspace
del
删除光标前一个字符
删除光标处一个字符
←↓↑→移动光标
home
end
移动到这一行的最前面字符处
移动到这一行的最后面字符处
Page Down
Page Up
向下翻一页
向上翻一页

末行模式

相较于命令模式的功能键,该模式通过输入命令来执行编辑器的操作。常用操作 :

命令作用
:q
:q!
退出编辑器
强制退出编辑器 (不想保存编辑过的操作时使用)
:wq
:wq!
保存内容并退出编辑器
强制保存并退出
/word
?word
向光标之下搜索一个为 word 的字符串
向光标之上搜索一个为 word 的字符串
:n1,n2s/word1/word2/gn1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1,并替换为 word2
:1,$s/word1/word2/g
:%s/word1/word2/g
从第一行到最后一行寻找 word1 ,并替换为 word2
:1,$s/word1/word2/gc
:%s/word1/word2/gc
从第一行到最后一行寻找 word1 ,并替换为 word2,每次替换需要用户确认
:set nu
:set nonu
显示行号
取消显示行号
: ↑
: ↓
记录中上一条执行的命令
记录中下一条执行的命令

nano

另一种文本编辑器,没有 vi/vim 那样分三层模式,可以直接编辑文件内容,并且通过组合键来实现快捷功能

安装方式
# CentOS
yum -y install nano

# Debian
apt-get install -y nano

语法

nano [arguments] [file ..]
# -v 只读模式打开文件
快捷键功能
ctrl + G
F1
查看 nano 编辑器帮助
ctrl + X
F2
退出编辑器 (若产生了修改会提示是否修改文件名以及保存)
ctrl + O
F3
保存当前文件
ctrl + W
F6
搜索字符
alt + 6
ctrl + K
复制光标所在的一行
剪切光标所在的一行
ctrl + U将已剪切/复制的内容在光标上一行贴上
ctrl + C显示光标位置
ctrl + R读取其他文件并插入光标位置
alt + U
alt + E
撤销上一个动作
重做上一个动作
ctrl+V
F8
向下翻一页
ctrl+Y
F7
向上翻一页
ctrl + 6多行标记,用于多行操作,例如复制、剪切等,再按则取消标记
ctrl + T拼写检查
alt + #显示行号,再按则关闭行号显示
ctrl + _跳转至某行 (输入行号)
alt + Y语法高亮
ctrl + J对其当前段落 (以空格为分隔符)
上一篇
下一篇