文章目录
- 3.1 字符界面简介
- Linux字符界面
- 字符界面登录提示
- 虚拟控制台
- 1.shutdown命令
- 2.halt命令
- 3.reboot命令
- 3.2在Linux系统下获取帮助
- man命令
- 使用--help选项获取帮助
- 3.4 使用bash
- 1、常用控制组合键
- 2、光标操作(1)
- 2、光标操作(2)
- 3、特殊字符
- 4、通配符
- 3.5Shell实用功能
- 命令行自动补全
- 命令历史记录
- 使用命令历史举例
- 搜索历史命令
- 命令排列
- 1. 使用“;”
- 2. 使用“&&”
- 命令替换
- 命令别名
- 管道
- 3.6 重定向
- 输出重定向
- 输入重定向
- 错误重定向
- 同时实现输出和错误重定向
- 3.7 vi编辑器
- 1.命令模式
- 2.插入模式
- 3.末行模式
- 进入插入模式命令
- 光标移动(1)
- 光标移动(2)
- 光标移动(3)
- 命令模式命令(1)
- 命令模式命令(2)
- 命令模式命令(3)
- 末行模式命令(1)
- 末行模式命令(2)
- 末行模式命令(3)
3.1 字符界面简介
Linux字符界面
安装Linux系统之后,系统启动默认进入的是图形化界面,可以通过使用以下命令修改为进入字符界面,所做改变在系统重新引导之后即可生效。
[root@rhel ~]# systemctl get-default graphical.target
//查看计算机系统启动后要进入的默认目标,graphical.target表示图形化界面
[root@rhel ~]# systemctl set-default multi-user.target
//将multi-user.target目标设置为启动计算机系统后要进入的默认目标,multi-user.target表示字符界面
字符界面登录提示
Linux系统用户登录分两步:第一步输入用户的用户名,系统根据该用户名识别用户;第二步输入用户的口令。当用户正确地输入用户名和口令后,就能合法地进入系统,这时就可以对系统进行各种操作了,注意超级用户root登录后提示符是“#”,而其他用户登录后提示符是“$”。
虚拟控制台
Linux系统可以同时接受多个用户同时登录,还允许用户进行多次登录,这是因为Linux系统提供了虚拟控制台的访问方式。
在字符界面下,虚拟控制台的选择可以通过按下[Alt]键和一个功能键来实现,通常使用F1~F6键。比如用户登录后,按下[Alt+F2]键,用户可以看到“login:”提示符,说明用户进入了第二个虚拟控制台。然后只需按[Alt+F1]组合键,就可以回到第一个虚拟控制台。
如果用户在图形界面下,那么可以使用[Ctrl+ Alt+F2]~[Ctrl+ Alt+F6]组合键切换字符虚拟控制台,使用[Ctrl+Alt+F1]可以切换到图形界面。
1.shutdown命令
shutdown命令可以安全地关闭或重启Linux系统。
命令语法:
shutdown [选项] [时间] [警告信息]
【例3.1】 立即关闭计算机系统。
[root@rhel ~]# shutdown -h now
【例3.2】 定时45分钟后关闭计算机系统。
[root@rhel ~]# shutdown -h +45
【例3.3】 立即重新启动计算机系统,并发出警告信息。
[root@rhel ~]# shutdown -r now "system will be reboot now."
【例3.4】 定时在1点38分重新启动计算机系统。
[root@rhel ~]# shutdown -r 01:38
2.halt命令
使用halt命令就是调用“shutdown –h
”命令执行关机任务。
命令语法:
halt [选项]
【例3.5】 使用halt命令关闭系统。
[root@rhel ~]# halt
3.reboot命令
reboot命令的工作过程与halt相似,不过reboot是引发计算机重启,而halt是引发计算机关闭。它的选项与halt相似。
【例3.6】 使用reboot命令重启计算机系统。
[root@rhel ~]# reboot
3.2在Linux系统下获取帮助
man命令
man命令格式化并显示在线的手册页。通常使用者只要在命令man后,输入想要获取的命令的名称,man就会列出一份完整的说明,其内容包括命令语法、各选项的意义以及相关命令等。
命令语法:
man [选项] [名称]
使用–help选项获取帮助
使用–help选项可以显示命令的使用方法以及命令选项的含义。只要在所需要显示的命令后面输入“–help”选项,然后就可以看到所查命令的帮助内容了。
命令语法:
[命令] --help
【例3.9】 查看mkdir
命令的帮助信息。
[root@rhel ~]# mkdir --help
3.4 使用bash
1、常用控制组合键
控制组合键 | 功能 |
Ctrl+l | 清屏 |
Ctrl+o | 执行当前命令,并选择上一条命令 |
Ctrl+s | 阻止屏幕输出 |
Ctrl+q | 允许屏幕输出 |
Ctrl+c | 终止命令 |
Ctrl+z | 挂起命令 |
Ctrl+m | 相当于按回车键 |
Ctrl+d | 输入结束,即EOF的意思,或者注销Linux系统 |
2、光标操作(1)
组合键 | 功能 |
Ctrl+a | 移动光标到命令行首 |
Ctrl+e | 移动光标到命令行尾 |
Ctrl+f | 按字符前移(向右) |
Ctrl+b | 按字符后移(向左) |
Ctrl+xx | 在命令行首和光标之间移动 |
Ctrl+u | 删除从光标到命令行首的部分 |
Ctrl+k | 删除从光标到命令行尾的部分 |
Ctrl+w | 删除从光标到当前单词开头的部分 |
Ctrl+d | 删除光标处的字符 |
Ctrl+h | 删除光标前的一个字符 |
2、光标操作(2)
组合键 | 功能 |
Ctrl+y | 插入最近删除的单词 |
Ctrl+t | 交换光标处字符和光标前面的字符 |
Alt+f | 按单词前移(向右) |
Alt+b | 按单词后移(向左) |
Alt+d | 从光标处删除至单词尾 |
Alt+c | 从光标处更改单词为首字母大写 |
Alt+u | 从光标处更改单词为全部大写 |
Alt+l | 从光标处更改单词为全部小写 |
Alt+t | 交换光标处单词和光标前面的单词 |
Alt+Backspace | 与Ctrl+w功能类似,分隔符有些差别 |
3、特殊字符
符号 | 功能 |
~ | 用户主目录 |
` | 反引号,用来命令替代(在Tab键上面的那个键) |
# | 注释 |
$ | 变量取值 |
& | 后台进程工作 |
( | 子Shell开始 |
) | 子Shell结束 |
\ | 使命令持续到下一行 |
| | 管道 |
< | 输入重定向 |
> | 输出重定向 |
>> | 追加重定向 |
’ | 单引号(不具有变数置换的功能) |
" | 双引号(具有置换的功能) |
/ | 路径分隔符 |
; | 命令分隔符 |
4、通配符
符号 | 功能 |
? | 代表任何单一字符 |
* | 代表任何字符 |
[字符组合] | 在中括号中的字符都符合,比如[a-z]代表所有的小写字母 |
[!字符组合] | 不在中括号中的字符都符合,比如[!0-9]代表非数字的都符合 |
3.5Shell实用功能
命令行自动补全
在Linux系统中,有太多的命令和文件名称需要记忆,使用命令行补全功能可以快速
的写出文件名和命令名。
如果需要快速地从当前所在的目录跳转到/usr/src/kernels/
目录,可以执行以下操作。
[root@rhel ~]# cd /u<Tab>/sr<Tab>/k<Tab>
是按“Tab”键的意思,使用“Tab”键也称为命令行自动补全,这在平常应用中是不可缺少的。
命令历史记录
在操作Linux系统的时候,每一个操作的命令都会记录到命令历史中,在以后可以通过命令历史查看和使用以前操作的命令。
bash启动的时候会读取~/.bash_history
文件,并将其载入到内存中,$HISTFILE
变量就用于设置~/.bash_history
文件,bash退出时也会把内存中的历史记录回写到~/.bash_history
文件中。
使用history命令可以查看命令历史记录,每一条命令前面都会有一个序列号标示。
命令语法:
history [选项]
使用命令历史举例
举例 | 描述 |
!! | 运行上一个命令 |
!6 | 运行第6个命令 |
!8 /test | 运行第8个命令并在命令后面加上/test |
!?CF? | 运行上一个包含CF字符串的命令 |
!ls | 运行上一个ls命令(或以ls开头的历史命令) |
!ls:s/CF/G | 运行上一个ls命令,其中把CF替换成G |
fc | 编辑并运行上一个历史命令 |
fc 6 | 编辑并运行第6条历史命令 |
bootroot^ | 快速替换。将最后一个命令中的boot替换为root后运行 |
!-5 | 运行倒数第5个命令 |
!$ | 运行前一个命令最后的参数 |
【例3.11】 使用命令历史记录功能键。
[root@rhel ~]# mkdir /root/aaa
//创建目录/root/aaa
[root@rhel ~]# cd !$
cd /root/aaa
//!$是指重复前一个命令最后的参数,参数是/root/aaa
[root@rhel aaa]# pwd
/root/aaa
//显示用户当前目录是/root/aaa
搜索历史命令
快捷键 | 描述 |
↑(向上方向箭) | 查看上一个命令 |
↓(向下方向箭) | 查看下一个命令 |
Ctrl+p | 查看历史列表中的上一个命令 |
Ctrl+n | 查看历史列表中的下一个命令 |
Ctrl+r | 向上搜索历史列表 |
Alt+p | 向上搜索历史列表 |
Alt+> | 移动到历史列表末尾 |
命令排列
如果希望一次执行多个命令,Shell允许在不同的命令之间,放上特殊的排列字符。
1. 使用“;”
使用“;”命令时先执行命令1,不管命令1是否出错,接下来就执行命令2。
命令语法:
命令1; 命令2
【例3.15】 使用排列命令“;”同时执行两个命令。
[root@rhel ~]# ls -l /boot;du -hs /root
2. 使用“&&”
使用“&&”命令时只有当命令1正确运行完毕后,才能执行命令2 。
【例3.16】 使用排列命令“&&”同时执行两个命令。
[root@rhel ~]# ls -a /root/bogusdir&&du -hs
ls: 无法访问/root/bogusdir: 没有那个文件或目录
//将返回“ls: 无法访问/root/bogusdir: 没有那个文件或目录”,而“du –hs”命令根本没有运行,因为没有/root/bogusdir目录
命令替换
在Linux系统中,Shell命令的参数可以由另外一个命令的结果来替代,这种称之为命令替换。
1.使用“$( )”
命令语法:
命令1 $(命令2)
2.使用“`”(位于Tab键上面那个键)
命令语法:
命令1 \`命令2`
[root@rhel ~]# pidof less
7552
//less进程号为7552
Kill -9 7552
使用命令替换功能杀死less进程。
kill -9 $(pidof less)
或者
kill -9 `pidof less`
命令别名
在需要执行某一个非常长的命令时,所有的命令以及命令的选项、参数都要一一输入,很枯燥也容易出现错误。可以为常用命令定义快捷方式,这些快捷方式可以用比较简单的命令别名来定义。
1.创建别名
使用alias命令可以为命令定义别名。如果命令中有空格的话,就需要使用双引号(比如在命令与选项之间就有空格)。
命令语法:
alias [别名]=[需要定义别名的命令]
2.取消别名
当用户需要取消别名的定义时,可以使用unalias命令。
命令语法:
unalias [别名]
管道
Linux系统的理念是汇集许多小程序,每个程序都有特殊的专长。复杂的任务不是由大型软件完成,而是运用Shell 的机制,组合许多小程序共同完成。管道就在其中发挥着重要的作用,它可以将某个命令的输出信息当作某个命令的输入,由管道符号“|”来标识。
命令语法:
[命令1]|[ 命令2]|[ 命令3]
【例3.22】 使用简单的管道。
[root@rhel ~]# ls /etc|more
abrt
acpi
adjtime
akonadi
--More--
//命令ls /etc显示/etc目录的内容,命令more是分页显示内容
【例3.23】 使用复杂的管道。
[root@PC-LINUX ~]# rpm -qa|grep a|more
//命令rpm -qa显示已经安装在系统上的RPM包,命令grep a是过滤软件包,命令more是分页显示这些信息
3.6 重定向
希望将命令的输出结果保存到文件中,或者以文件内容作为命令的参数,这时就需要用到重定向。重定向不使用系统的标准输入端口、标准输出端口或是标准错误端口,而是进行重新的指定。
重定向有四种方式:输出重定向、输入重定向、错误重定向以及同时实现输出和错误的重定向。
输出重定向
输出重定向,即将某一命令执行的输出保存到文件中,如果已经存在相同的文件,那么覆盖源文件中的内容。
命令语法:
[命令] > [文件]
【例3.24】使用输出重定向将/boot目录的内容保存到/root/abc文件中。
[root@rhel ~]# ls /boot > /root/abc
【例3.25】使用echo命令和输出重定向创建/root/mm文件,文件内容是hello。
[root@rhel ~]# echo Hello > /root/mm
[root@rhel ~]# cat /root/mm
Hello
//显示文件/root/mm,可以看到文件的内容是Hello
另外一种特殊的输出重定向是输出追加重定向,即将某一命令执行的输出添加到已经存在的文件中。
命令语法:
[命令] >> [文件]
【例3.26】使用输出追加重定向将数据写入文件/root/ao。
[root@rhel ~]# echo Hello > /root/ao
//先创建文件/root/ao,文件内容是Hello
[root@rhel ~]# echo Linux >> /root/ao
//向文件/root/ao中追加数据Linux
[root@rhel ~]# cat /root/ao
Hello
Linux
输入重定向
输入重定向,即将某一文件的内容作为命令的输入。
命令语法:
[命令] < [文件]
【例3.27】使用输入重定向将文件/root/mm
的内容作为输入让cat命令执行。
[root@rhel ~]# cat < /root/mm
Hello
//可以看到文件/root/mm的内容是Hello
另外一种特殊的输入重定向是输入追加重定向,这种输入重定向告诉Shell,当前标准输入来自命令行的一对分隔符之间的内容。
命令语法:
[命令] << [分隔符]
> [文本内容]
> [分隔符]
【例3.28】使用输入追加重定向创建/root/bc文件。
[root@rhel ~]# cat > /root/bc <<EOF
> Hello Linux
> EOF
//一般使用EOF作为分隔符
错误重定向
错误重定向,即将某一命令执行的出错信息输出到指定文件中。
命令语法:
[命令] 2> [文件]
【例3.29】 查看根本不存在的/root/kk
文件,出现报错信息,将其保存到文件/root/b
中。
[root@rhel ~]# cat /root/kk 2> /root/b
[root@rhel ~]# cat /root/b
cat: /root/kk: 没有那个文件或目录
//使用cat命令查看/root/b文件,可以看到其内容就是执行命令cat /root/kk的报错信息
另外一种特殊的错误重定向是错误追加重定向,即将某一命令执行的出错信息添加到已经存在的文件中。
命令语法:
[命令] 2>> [文件]
【例3.30】 使用错误追加重定向,将执行命令的多次出错信息保存到文件/root/b
中。
[root@rhel ~]# cat /root/kk 2> /root/b
[root@rhel ~]# cat /root/kk 2>> /root/b
[root@rhel ~]# cat /root/b
cat: /root/kk: 没有那个文件或目录
cat: /root/kk: 没有那个文件或目录
同时实现输出和错误重定向
同时实现输出和错误的重定向,即可以同时实现输出重定向和错误重定向的功能。
命令语法:
[命令] &> [文件]
【例3.31】 同时使用输出和错误重定向。
[root@rhel ~]# ls /boot &> /root/kk
[root@rhel ~]# cat /root/kk
config-3.3.4-5.fc17.i686.PAE
grub
grub2
initramfs-3.3.4-5.fc17.i686.PAE.img
lost+found
System.map-3.3.4-5.fc17.i686.PAE
tboot.gz
tboot-syms
vmlinuz-3.3.4-5.fc17.i686.PAE
//因为/boot目录下有文件,所以最终使用了输出重定向
【例3.32】 同时使用输出和错误重定向。
[root@rhel ~]# ls /nn &> /root/oo
[root@rhel ~]# cat /root/oo
ls: 无法访问/nn: 没有那个文件或目录
//因为没有/nn目录,所以最终使用了错误重定向
3.7 vi编辑器
1.命令模式
进入vi编辑器之后,系统默认处于命令模式。命令模式控制屏幕光标的移动,字符、
字或行的删除,某区域的移动、复制等。
在命令模式下,按冒号键“:”可以进入末行模式,按字母键“a”就可以进入插入模式。
2.插入模式
只有在插入模式下,才可以进行文本编辑。在插入模式下按“Esc”键可回到命令模式。
3.末行模式
将文件保存或退出vi编辑器,也可以设置编辑环境、替换字符或删除字符。
在末行模式下按“Esc”键可以回到命令模式。
进入插入模式命令
命令 | 功能 |
i | 从光标当前所在位置之前开始插入 |
a | 从光标当前所在位置之后开始插入 |
I | 在光标所在行的行首插入 |
A | 在光标所在行的行末尾插入 |
o | 在光标所在的行的下面新开一行插入 |
O | 在光标所在的行的上面新开一行插入 |
s | 删除光标位置的一个字符,然后进入插入模式 |
S | 删除光标所在的行,然后进入插入模式 |
光标移动(1)
命令 | 功能 | 重点 |
↑键(向上箭头 ) | 使光标向上移动一行 | |
↓键(向下箭头 ) | 使光标向下移动一行 | |
←键(向左箭头) | 使光标向左移动一个字符 | |
→键(向右箭头 ) | 使光标向右移动一个字符 | |
k | 使光标向上移动一行 | |
j | 使光标向下移动一行 | |
h | 使光标向左移动一个字符 | |
l | 使光标向右移动一个字符 | |
nk | 使光标向上移动n行,n代表数字 | * |
光标移动(2)
nj |
nh |
nl |
H |
M |
L |
Ctrl+b |
Ctrl+f |
Ctrl+u |
Ctrl+d |
0(数字0) |
光标移动(3)
命令 | 功能 | 重点 |
$ | 使光标移动到光标所在行的行尾 | * |
^ | 使光标移动到光标所在行的行首 | * |
w | 使光标跳到下一个字的开头 | |
W | 使光标跳到下一个字的开头,但会忽略一些标点符号 | |
e | 使光标跳到下一个字的字尾 | |
E | 使光标跳到下一个字的字尾,但会忽略一些标点符号 | |
b | 使光标回到上一个字的开头 | |
B | 使光标回到上一个字的开头,但会忽略一些标点符号 | |
( | 使光标移动到上一个句首 | * |
) | 使光标移动到下一个句首 | * |
{ | 使光标移动到上一个段落首 | * |
} | 使光标移动到下一个段落首 | * |
G | 使光标移动到文件尾(最后一行的第一个非空白字符处) | * |
gg | 使光标移动到文件首(第一行第一个非空白字符处) | * |
命令模式命令(1)
删除
命令 | 功能 |
x | 删除光标所在位置的字符 |
X | 删除光标所在位置的前面一个字符 |
nx | 删除光标所在位置开始的n个字符,n代表数字 |
nX | 删除光标所在位置前面n个字符,n代表数字 |
dd | 删除光标所在行 |
ndd | 从光标所在行开始删除n行,n代表数字 |
db | 删除光标所在位置的前面一个单词 |
ndb | 删除光标所在位置的前面n个单词,n代表数字 |
dw | 从光标所在位置开始删除一个单词 |
ndw | 从光标所在位置开始删除几个单词,n代表数字 |
d$ | 删除光标到行尾的内容(含光标所在处字符) |
D | 删除光标到行尾的内容(含光标所在处字符) |
dG | 从光标位置所在行一直删除到文件尾 |
命令模式命令(2)
复制和粘贴
命令 | 功能 | 重点 |
yw | 复制光标所在位置到单词尾的字符 | |
nyw | 复制光标所在位置开始的n个单词,n代表数字 | |
yy | 复制光标所在行 | * |
nyy | 复制从光标所在行开始的n行,n代表数字 | |
y$ | 复制光标所在位置到行尾内容到缓存区 | |
y^ | 复制光标前面所在位置到行首内容到缓存区 | |
YY | 将当前行复制到缓冲区 | * |
nYY | 将当前开始的n行复制到缓冲区,n代表数字 | |
p | 将缓冲区内的内容写到光标所在的位置 |
命令模式命令(3)
类型 | 命令 | 功能 | 重点 |
替换 | r | 替换光标所在处的字符,按[r]键之后输入要替换的字符 | * |
替换 | R | 替换光标所到之处的字符,直到按下[ESC]键为止,按[R]键之后输入要替换的字符 | * |
撤销和重复 | u | 撤销上一个操作。按多次u可以执行多次撤销 | * |
撤销和重复 | U | 取消所有操作 | * |
撤销和重复 | . | 再执行一次前面刚完成的操作 | |
列出行号 | Ctrl+g | 列出光标所在行的行号 | * |
保存和退出 | ZZ | 保存退出 | * |
保存和退出 | ZQ | 不保存退出 | * |
查找字符 | /关键字 | 先按[/]键,再输入想查找的字符,如果第一次查找的关键字不是想要的,可以一直按[n]键会往后查找下一个关键字,而按[N]键会往相反的方向查找 | |
查找字符 | ?关键字 | 先按[?]键,再输入想查找的字符,如果第一次查找的关键字不是想要的,可以一直按[n]键往前查找下一个关键字,而按[N]键会往相反的方向查找 | |
合并 | nJ | 将当前行开始的n行进行合并,n代表数字 | |
合并 | J | 清除光标所在行与下一行之间的换行,行尾没有空格的话会自动添加一个空格 |
末行模式命令(1)
类型 | 命令 | 功能 | 重点 |
运行Shell命令 | :!command | 运行Shell命令,command代表命令 | |
运行Shell命令 | :r!command | 将命令运行的结果信息输入到当前行位置,command代表命令 | |
运行Shell命令 | :n1,n2 w !command | 将n1到n2行的内容作为命令的输入,n1和n2代表数字,command代表命令 | |
查找字符 | :/str/ | 从当前光标开始往右移动到有str的地方,str代表字符 | * |
查找字符 | :?str? | 从当前光标开始往左移动到有str的地方,str代表字符 | * |
替换字符 | 😒/str1/str2/ | 将光标所在行第一个字符str1替换为str2,str1和str2代表字符 | * |
替换字符 | 😒/str1/str2/g | 将光标所在行所有的字符str1替换为str2,str1和str2代表字符 | |
替换字符 | :n1,n2s/str1/str2/g | 用str2替换从第n1行到第n2行中出现的str1,str1和str2代表字符,n1和n2代表数字 | |
替换字符 | :% s/str1/str2/g | 用str2替换文件中所有的str1,str1和str2代表字符 | |
替换字符 | :.,$s/str1/str2/g | 将从当前位置到结尾的所有的str1替换为str2,str1和str2代表字符 |
末行模式命令(2)
保存和退出
命令 | 功能 | 重点 |
:w | 保存文件 | * |
:w filename | 将文件另存为filename | |
:wq | 保存文件并退出vi编辑器 | * |
:wq filename | 将文件另存为filename后退出vi编辑器 | |
:wq! | 保存文件并强制退出vi编辑器 | |
:wq! filename | 将文件另存为filename后强制退出vi编辑器 | |
:x | 保存文件并强制退出vi编辑器,其功能和:wq!相同 | |
:q | 退出vi编辑器 | |
:q! | 如果无法离开vi,强制退出vi编辑器 | |
:n1,n2w filename | 将从n1行开始到n2行结束的内容保存到文件filename中,n1和n2代表数字 | |
:nw filename | 将第n行内容保存到文件filename中,n代表数字 | |
:1,.w filename | 将从第一行开始到光标当前位置的所有内容保存到文件filename中 | |
:.,$w filename | 将从光标当前位置开始到文件末尾的所有内容保存到文件filename中 | |
:r filename | 打开另外一个已经存在的文件filename | |
:e filename | 新建名为filename的文件 | |
:f filename | 把当前文件改名为filename文件 | |
:/str/w filename | 将包含有str的行写到文件filename中,str代表字符 | |
:/str1/,/str2/w filename | 将从包含有str1开始到str2结束的行内容写入到文件filename中,str1和str2代表字符 |
末行模式命令(3)
类型 | 命令 | 功能 | 重点 |
删除 | :d | 删除当前行 | * |
删除 | :nd | 删除第n行,n代表数字 | |
删除 | :n1,n2 d | 删除从n1行开始到n2行为止的所有内容,n1和n2代表数字 | |
删除 | :.,$d | 删除从当前行开始到文件末尾是所有内容 | |
删除 | :/str1/ , /str2/d | 删除从str1开始到str2为止的所在行的所有内容,str1和str2代表字符 | |
复制和移动 | :n1,n2 co n3 | 将从n1行开始到n2行为止的所有内容复制到n3行后面,n1、n2和n3代表数字 | |
复制和移动 | :n1,n2 m n3 | 将从n1行开始到n2行为止的所有内容移动到n3行后面,n1、n2和n3代表数字 | |
跳到某一行 | :n | 在冒号后输入一个数字,再按回车键就会跳到该行,n代表数字 | * |
设置vi环境 | :set number | 在文件中的每一行前面列出行号 | * |
设置vi环境 | :set nonumber | 取消在文件中的每一行前面列出行号 | |
设置vi环境 | :set readonly | 设置文件为只读状态 |