摘自朱有鹏老师公开课视频

3、编辑器vi的使用(vi和vim的联系)
什么是编辑器?编辑器就是一款软件,它的主要作用就是用来编辑。譬如编写文件,编写代码。
Windows中的常用编辑器,如自带的notepad。比较好用的notepad++,UltraEditor,SlickEditor
Linux中常用编辑器,自带的最古老的vi。比较好用的vim,gedit。
注:vi和vim的关系:vim是vi的升级版,推荐使用vim。
我们在后面提到vi时,其实都是指vim。

3.1、vi基础使用
*使用vi来打开/创建一个文件,vi pathname
*vi的两种模式:
命令模式:当vi打开时默认为命令模式,要转入输入模式,需要按a或者i键。在命令模式下,此时键盘上输入的所有东西都被vi当作命令来对待。
在命令模式下,最好不要乱输入。此时应该输入相应的命令,来让vi做相应的事。
输入模式:输入模式用来向文件输入内容。可以从命令模式中按a或者i进入输入模式。进入输入模式后,就可以随意按键盘进行输入了。输入完成后如果要保存,要先退回到命令模式(因为保存也是一种命令)。在输入模式下按ESC键退回到命令模式。
注:注意看屏幕左下角,当命令模式时无提示信息或者提示文件名等信息,等处于输入模式时,提示 -- INSERT --
在命令模式下如何保存:
:wq 保存并且退出
:w 只保存不推出
:q 不保存退出 进来看了一下没改退出
:q! 不保存强制退出
:wq! 保存并强制退出

3.2、vi的高级使用
* 查找
在命令模式下,输入/xxx,就可以查找到xxx

* 快速切换行
在命令模式下,输入:num,就可以快速切换到num行

* 设置显示行号
在命令模式下,输入:set nu,就可以显示行号

注:设置不显示行号,命令模式输入:set nonu
设置永久显示行号,需要修改vi的配置文件。打开vi的配置文件~/.vimrc,在其中输入set nu即可。

* 行删除
命令模式下,先将光标移动到要删除的行,然后输入dd
如果要删除连续多行,譬如要删除连续的3行,使用3dd

* 行复制粘贴
复制:命令模式下,nyy
粘贴:命令模式下,p
细节,复制时要把光标放在多行的第一行,粘贴时实际
粘贴到当前光标所在行的下一行。

3.3、linux中权限表示&管理
3.3.1、普通用户与特权用户 su命令切换用户
Windows中有普通用户和特权用户,特权用户是Administrator,普通用户可以有很多个。
特权用户是系统的管理员,对系统内所有文件具有操作权限。每个普通用户只能处理自己的文件,不能访问其他用户的文件,更不能随意处理操作系统的文件。
Linux中也有普通用户和特权用户的区别。特权用户就是root用户。普通用户权限受到限制,譬如说普通用户不能
cd /root,普通用户不能使用apt-get install 来装软件。

3.3.2、rwx与权限表示
ls -l显示详细信息
drwxr-xr-x 10个字符,第一个表示文件类型。剩下的9个分成3组,表示文件权限。
前三个表示此文件的属主对文件的权限
中间三个表示此文件属主所在的组对文件的权限
最后三个表示其他用户对文件的权限
rwx怎么解析:r代表可读,w代表可写,x代表可执行
rwx:可读,可写,可执行
r-x: 可读,不可写,可执行
r--: 可读,不可写,不可执行

3.3.3、使用sudo暂时获取root权限
这是ubuntu的一个特点,在ubuntu中可以使用sudo命令让普通用户暂时获取root用户的权限,而不必进行用户切换。