07笔记---vim

今日内容

1.什么是VIM?

其实和windows的记事本或word文档很像,都是用来编辑文件的

2.VI与Vim有什么关系? 区别?

其实上本质没有区别, vim是vi的增强版,语法检测,语法高亮

由于系统默认最小化安装 需要 yum install vim -y安装


3.如何使用vim  vim的四种模式

进入vim 首先进入 ‘普通模式’------>支持复制、粘贴、剪贴、删除、撤销、替换等

‘普通模式’再进入‘编辑模式’用“i,a,o,I,A,O”------->关键字‘INSERT’  只能编辑,不能保存

‘编辑模式’ESC回到普通模式然后由普通模式进入‘命令模式’使用“: , /”进入。  保存,退出,强制退出

PS:在vim中,无法直接从编辑模式到命令模式。

vim 普通模式

1、命令光标跳转

1)G #光标跳转到文件末端

2)gg #光标跳转到文件顶端

3)Ngg #跳转到文件的第N行

4)$ #光标跳转至当前所在行的尾部

5)^|0  #光标跳转至当前光标所在行的首部

----------------------------------------------------------------

2、文件内容较多

1)ctrl f #往下翻页(行比较多)

2)ctrl b #往上翻页

-----------------------------------------------------------------

3、复制与粘贴 yy p

1)yy 复制当前光标所在的行

2)5yy 复制当前光标以及光标向下4行

3)p(小写) #粘贴至当前光标下一行

4)p(大写) #粘贴至当前光标上一行

---------------------------------------------------------------------

4、删除、剪贴、撤销

1)dd #删除当前光标所在的行

2)4dd #删除当前所在行以及往下的3行

3)dG #删除当前光标以后的所有行

4)D #删除当前光标即光标以后的内容

5)x #删除当前光标标记往后的字符删除,删除行中的一部分,删除单个字符

6) X #删除光标之前的一个字符

6)u #撤销上一次的操作

7)dd&p #剪贴、先删除dd(number dd),后粘贴 p

--------------------------------------------------------------------

5、替换

1)r #替换当前光标标记的单个字符

----------------------------------------------------------------------

vim 编辑模式

2、编辑模式(从从普通模式进入到编辑模式)

1)i #进入编辑模式,光标记不做任何操作

2)a #进入编辑模式,将当前光标往后一位

3)o #进入编辑模式,并且当前光标下添加一行空白内容

4)I #进入编辑模式,并且光标会跳转至本行的头部

5)A #进入编辑模式,将光标移动到本行的尾部

6)O #进入编辑模式,并在当前光标上添加一行空白内容

------------------------------------------------------------------------

vim 命令模式

3、命令模式,主要用于搜索,保存,退出文件

1。文件的保存与退出

1)w #保存当前状态

2)q #退出当前文档(文档必须保存才能退出)

3)wq #先保存,再退出

4)w! #强制保存当前状态

5)q! #强制退出文档不会修改当前内容

6)wq! #强制退出并保存

7)x #先保存,再退出

8)zz #保存退出,shift+zz

9):number #跳转至对应的行号

文件保存  :wq 保存并退出  :wq! 强制保存并退出

-------------------------------------------------------------------------

2.文件内容查找

1)/string #需要搜索的内容(查找)

2)n #按搜索到的内容依次往下进行查找

3)Ngg #按搜索到的内容依次往上查找

--------------------------------------------------------------------------

3、文件内容的替换

1):1,5s#sbin#test#g #替换1-5行中包含sbin的内容为test

2):%s$sbin#test#g #替换整个文本文件中包含sbin的替换为test

-----------------------------------------------------------------------------

4、文件内容另存

1):w /root/test.txt #将所有内容另存为/root/test.txt文件

----------------------------------------------------------------------------

VIM视图模式

4.视图模式(从普通模式进入视图模式),主要进行批量操作

ctrl v 进入可视块模式,选中需要注释的行

1)插入:按shift+i进入编辑模式,输入#,结束按ESC键

2)删除:选中内容后按d删除

3)替换:选中需要替换的内容,按下r键,然后输入替换后的内容

----------------------------------------------------------------------------------

shift +v 进入可视行模式,选中整行内容

1)复制:选中行内容后按y键即可复制

2)删除:选中行内容后按d键删除

--------------------------------------------------------------------------------

VIM扩展知识

1、环境变量临时生效

1):set nu #显示行号

2):set ic #忽略大小写,在搜索的时候有用

3):set ai #自动缩进

4):set list #显示制表符(空行、tab键)

5):set no[nu|ic|ai] #取消历史设定的变量

2、环境变量永久生效。~/.vimrc个人环境变量(优先级高)/etc/vimrc全局环境变量

# vim  ~/.vimrc #当下次再打开文件自动显示行号并忽略大小写 set nu set ic

#如果个人vim环境没有配置, 则使用全局vim环境变量配置。

#如果个人vim环境和全局环境变量产生冲突, 优先使用个人vim环境变 量

3.如何同时编辑多个文件

vim -o file1 file2  #水平分割 vim -O file1 file2  #垂直分割

#ctrl+ww 文件间切换

4.相同文件之间差异对比,通常用于对比修改前后差异

# diff      #文件对比   # vimdiff  

#以vim方式打开两个文件对比,高亮显示不同的内容

5.如果VIM非正常退出 (ctrl+z)挂起或强制退出终端没关闭VIM后

#假设打开filename文件被以外关闭,需要删除同文件名的.swp文件即可 解决

# rm -f .filename.swp


2.练习示例2-文件

server {

Listen 8080;

Server_Name vim.OldboyEDU.com;

location / {

proxy_pass http://127.0.0.1:8080;

proxy_set_header Host $http_host;

proxy_set_header X-Forward-for;

proxy_intercept_errors on;

proxy_next_upstream error timeout;

proxy_next_upstream_timeout 3s;

proxy_next_upstream_tries 2;

error_page 500 502 403 404 = /proxy_error.html;

}

location = /proxy_error.html {

root /code/proxy;

}

}

2.练习示例2-题目 1.使用vim打开proxy.conf文件

1)创建proxy.conf文件




2.修改Listen为listen小写,并将8080修改为80

:2s#Listen#listen#g

        :2s#8080#80#g




3.修改ServerName为server_name小写。

        :3s#Server_Name#server_name#g



4.修改vim.OldboyEDU.com为vim.oldboy.com

    :3s#vim.OldboyEDU.com#vim.oldboy.com#g


5.在server_name行下插入一行 root /code;

    光标移至第三行普通模式下an 'o'键,光标在下方自动插入一行

    'i'插入模式,输入root/code


5.复制5-14行的内容,然后将其粘贴到14行下面

    5gg光标移动到第5行普通模式下输入10yy

表示复制成功

光标至14行末尾按p

6.删除与proxy_set_header相关的两行全部删除

    筛选出proxy_set_header关键字:   /proxy_set_header


使用dd删除 n选至下一个包含关键字的行


7.如上操作完成后,在13-20行前面加上#号

crtl+v进入可视块模式选中13-20行

shift+i插入命令 后 输入“#”按两下ESC


8.删除21-23的行,然后保存当前文件

21-23共三行,将光标定位到21行普通模式下输入3dd

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。