初学Linux中目录和VIM安装
一、 Linux目录介绍
目录结构就像一颗树(图片摘抄自互联网)
目录 | 用途 |
---|---|
bin | 可执行二进制文件的目录,存放着常用的命令ls、tar、mv、cat等 |
boot | 放置linux系统启动时用到的核心文件,自己的安装别放在这里。建议单独分区,分区大小100M即可 |
dev | 存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备 |
etc | 系统配置文件存放的目录,不建议在此目录下存放可执行文件 |
home | 存放普通用户的家目录,新增用户账号时,用户的家目录都存放在此目录下。建议单独分区,并设置较大的磁盘空间,方便用户存放数据 |
lib | 系统使用的函数库的目录 |
mnt | 挂载目录,临时挂载别的文件系统,比如将光驱挂载到/mnt/上,就可以进入目录查看光驱里的内容 |
opt | 给主机额外安装软件所摆放的目录,比如你安装oracle数据库就可以放倒这个目录下,默认是空的。以前的 Linux 系统中,习惯放置在 /usr/local 目录下 |
proc | 虚拟目录,是系统内存的映射,可以直接访问此目录获取系统信息。由于数据都存放于内存中,所以不占用磁盘空间 |
root | 系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下 |
run | 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run |
sbin | s表示Super User,放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能”查看”而不能设置和使用。 |
srv | service缩写,服务启动之后需要访问的数据目录 |
sys | 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs |
tmp | 存放临时文件的目录 |
usr | 应用程序存放目录,类似于windows下的program files目录,建议单独分区,设置较大的磁盘空间 |
var | 放置系统执行过程中经常变化的文件,如随时更改的日志文件。建议单独分区,设置较大的磁盘空间 |
1.打开终端,提示符为“$”,表明该用户为普通用户,此时,直接输su,回车,输入root密码,回车,就可以切换到root用户下,此时的提示符变为“#”。
注意,输入密码时终端是不显示的,而且每次切换为root用户都要经过这个过程。
2.切换回普通用户,只要输入 “su 用户名”就OK了。
二、 VI和VIM
vim编辑器需要安装三个包:
vim-enhanced-7.0.109-7.el5
vim-minimal-7.0.109-7.el5
vim-common-7.0.109-7.el5
yum -y install vim* 安装vim3个包
查看一下你本机已经存在的包,确认一下你的VIM是否已经安装: 输入 rpm -qa|grep vim
可自动安装,完毕后,即可使用vim编辑器。
最终 [root@localhost ~]# rpm -qa|grep vim vim-filesystem-7.4.160-4.el7.x86_64 vim-common-7.4.160-4.el7.x86_64 vim-enhanced-7.4.160-4.el7.x86_64 vim-minimal-7.4.160-4.el7.x86_64 [root@localhost ~]#
我们平时在windos系统上编辑文件,肯定会涉及到复制、粘贴、删除等操作,而这些操作在vi中都是在一般模式下进行的。
一般模式是默认模式,要进入编辑模式和命令模式都需要它作为桥梁。
用vi命令打开一个文件直接进入一般模式,在这个模式中可以对文本内容进行复制、粘贴、删除等操作。可以通过键盘方向键控制光标移动到指定位置,也可以通过快捷键控制光标位置。
1.1 复制
命令(语法) | 功能描述 | 案例(说明) |
---|---|---|
yy | 复制当前光标所在行 | |
y*y | 复制当前光标所在行开始的*行 | y2y:表示从当前光标所在行开始复制2行 |
yw | 赋值一个单词 | 光标之后开始复制,包括词尾的空格;如果想要复制整个单词,就要把光标放到单词首字母 |
1.2 粘贴
命令(语法) | 功能描述 | 案例(说明) |
---|---|---|
p | 粘贴 | 粘贴到当前光标的下一行(复制的行),或当前光标字符之后(复制的单词) |
1.3 删除
命令(语法) | 功能描述 | 案例(说明) |
---|---|---|
dd | 删除光标当前行 | |
d*d | 删除光标当前行开始的*行 | d2d:表示从当前光标所在行开始删除2行 |
dw | 删除光标之后的一个单词 | 光标之后开始删除,包括词尾空格;如果要删除整个单词,光标放到单词首字母,类似yw |
x | 删除光标之后的一个字符 | 相当于del |
X | 删除光标之前的一个字符 | 相当于Backspace |
1.4 撤销
命令(语法) | 功能描述 | 案例(说明) |
---|---|---|
u | 撤销 |
1.5 定位
上边的复制、粘贴、删除,到目前我们都是通过方向键来控制鼠标的位置,但是这样效率太低,通过下边的定位命令可以快速进行定位。在一般模式下定位光标,进入编辑模式进行编辑,这样可以大大提高效率。
命令(语法) | 功能描述 | 案例(说明) |
---|---|---|
shift+^ | 行首 | |
shift+$ | 行尾 | |
1+shift+g | 页头 | 先按1再一起按shift和g组合键 |
shift+g | 页尾 | |
*+shift+g | 任意行 | 先按数字*,在一起按shift和g组合键,调试程序时非常有用 |
3.编辑模式
在一般模式下,通过如下i、a、o、r命令进入编辑模式,对文档内容进行编辑。命令的区别在于进入编辑模式后光标插入点不同。
命令 | 功能描述 |
---|---|
i | 当前光标前 |
I | 当前光标所在行行首 |
a | 当前光标后 |
A | 当前光标所在行行尾 |
o | 当前光标下一行,新开一行 |
O | 当前光标上一行,新开一行 |
r | 当前光标之后,新输入会替换一个字符 |
R | 替换当前光标之后的多个字符 |
4.命令模式
在一般模式下,可以通过以下三个命令:“:”、“/”、“?”进入底行命令模式完成文件保存、内容查找及字符替换功能。执行完命令可以通过ESC返回一般模式。
4.1 文件保存
-
语法格式
:[选项]+回车
选项分为w、q、!可以相互组合使用。
w:保存
q:退出
!:强制执行
-
案例
:w 保存
:w filename 文件另存为filename
:wq 保存并退出
:wq! 强制保存并退出
:wq! filename 文件另存为filename并退出编辑器
4.2 查找内容
查找命令主要有2个:/或?二者功能一致,只记住一个即可
- 语法格式
/要查找的词+回车
?要查找的词+回车
如果用第一个语法/进行查询,则按n键向下查找下一个,shift+n向上查找下一个
第二个语法则相反,n向上查找上一个,shift+n向下查找下一个
-
案例
/heimatengyun 在当前文档中查找heimatengyun字符串
等价于
?heimatengyun
4.3 替换内容
可以通过如下命令替换当前文档里的内容
- 语法格式
:[范围]s/要被替换的内容/新内容/[c,e,g,i]+回车
范围:1,5表示从第一行到第五行。1,$表示从第一行到最后一行,等价于%。%表示当前编辑的文章。
可组合选项:c表示confirm,每次替换前询问;e表示不显示error;g表示globe不询问整行替换;i表示ignore不区分大小写;I表示大小写敏感
- 案例
1,3s/you/YOU 在当前文档的1至3行搜索you并替换为YOU。注意不是单词替换,只要匹配就会替换,比如如果第二行存在your这个单词,则会被替换为YOUr
1,3s/you/YOU/c 替换前会询问是否要替换
s/e/E/g 替换当前行所有e为E。假设当前光标所在行内容为where are you from替换后变为hErE arE you from
4.4 显示行号
:set nu 显示行号
:set nonu 关闭行号