学习笔记第十七节课

进入编辑模式。

  • 编辑模式就是进入一个可以编辑文本文档的模式。
  • i是进入编辑模式,同样shift+i也可以,而且shift+i可以直接把光标定位到行首进去编辑模式。
  • o也可以进去编辑模式,是在所在行的下一行进去编辑模式。也就是相当于直接按了回车。
  • shift+o是所在行的上一行进入编辑模式。
  • a也可以进入编辑模式,a进入编辑模式后会向当前光标所在位置向后移动一格。 shift+a 是移动到行末去。

vim命令模式

  • /+要搜索的字符串,就会高亮显示所有的带有要搜索的字符串。 然后按n可以向后继续查找。shift+n向前继续查找。
  • 也可以?+要搜索的字符串。这个按n是向前查找,shift+n向后查找。
  • 替换的功能很实用,比如从一个机器上cp到另一个机器上一个文件,到了这台机器上ip地址不一样了,就需要去更换,但是不可能一个个去换的,所以可以用替换的功能。
  • 替换的写法:从哪个行数开始+,+到那个行数结束+s/要更换的源字符串/要更换的字符串/+g(s的意思是表示要替换了。) (g是更换所有的意思,不加g的话,一行中如果有两个相同的字符串,只会更改前一个。)
  • 比如替换dnsmasq为yingxin(:1,100s/dnsamsq/yingxin/g)
  • 回车后就替换完成了。
  • 按:再按方向键 可以调出你之前输入的命令,和在命令行的用法一样。
  • 上面说到不加g会导致一行中相同的两个字符串,只替换前一个,试一下。
  • 第五行有两个yingxin 我们把yingxin换回dnsmasq ,不加g
  • 然后5+G 到第五行,发现第二个没有更换成dnsmasq。
  • 也可以不指定行数,全部替换,是 :1,$s/dnsmasq/yingxin/g
  • 再次搜索dnsmasq 就没有了。
  • 如果遇到带有/的字符串,会和命令中的/有冲突,系统会判定你这个也是命令中的一部分。就会产生混乱。
  • 遇到这种情况可以加一个反斜杠 \ 让系统识别不到/
  • 这样觉得看着很奇怪的话,也可以用#替换/ 或者用@符号也可以替换。
  • wq保存并退出。wq! 强制保存退出 (只适用于root用户)
  • q不保存退出。 q! 强制退出。(只适用于root用户)
  • w保存。 w! 强制保存。(只适用于root用户)
  • set nu 显示行号
  • set nonu 不显示行号。
  • 如果不想高亮显示,可以用nohl取消掉。
  • :x也可以保存退出 ,在更改文件后用x和wq是一样的。如果是文件打开了没有做任何操作,wq保存退出会更改mtime,系统会认定你做了操作。 但是x不会,没做就是没做。

vim实践



原文地址:http://blog.51cto.com/13645927/2103237

时间: 2024-07-30 12:38:49

学习笔记第十七节课的相关文章

[ExtJS5学习笔记]第十七节 Extjs5的panel组件增加accodion成为折叠导航栏

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39102335 官方例子:http://dev.sencha.com/ext/5.0.1/examples/window/layout.html?theme=neptune 本文作者:sushengmiyan -----------------------------------------------------------------------------------------

学习笔记第六节课

相对路径和绝对路径 想找一个文件,要有一个路径,任何一个文件都会有一个从 /开始的路径.绝对路径是从 /开始的 相对路径是相对你所在的位置的一个路径. 比如想查看一下当前所在的路径, 可以用pwd去查看,在root目录下,在root下去查看 .ssh/authorized_keys 的文件,(第一次用) 这就是一个相对路径,相对于root. 相对路径不是以 /开头的,是以当前目录为讲的一个路径 绝对路径是不管你在哪一个目录下,我都能通过 /找到你. pwd是查看我当前所在的目录在哪里,. cd就

[ExtJS5学习笔记]第二十七节 CMD打包错误 Error C2009: YUI Parse Error (identifier is a reserved word => debugger;)

本文地址:http://blog.csdn.net/sushengmiyan/article/details/41242993 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 使用cmd打包ext的时候报了一个诡异的错误.细细找来,发现是代码书写

[ExtJS5学习笔记]第二十七节 CMD打包错误 Error C2009: YUI Parse Error (identifier is a reserved word => debugger;)

本文地址:http://blog.csdn.net/sushengmiyan/article/details/41242993 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 使用cmd打包ext的时候报了一个诡异的错误. 细细找来,发现是代码书

学习笔记第五节课

系统目录结构(上,下) ls 是列取系统目录文件的.list是全拼 输入 ls /查看目录下面有什么 root就是root用户的家目录,每个用户都有家目录的,用来存一些配置文件和自己的一些东西. 如果想远程登录一个普通用户使用密钥认证,我们要在普通用户的家目录下创建一个.ssh/authorized_keys这样一个文件 我们可以使用命令 userdd +用户名创建一个普通用户, 然后可以在ls /home/用户名 下面创建.ssh/authorized_keys,这里home就是普通用户的家目

学习笔记第二十节课

安装与卸载软件 linux下和windows下的安装软件方法差不多.一共有三种方法. rpm和windows下的exe很像,可以直接安装 不用太多的设置.安装路径和文件名都是设定好的. yum是另一种方式去安装rpm包,在centos下安装的包叫rpm包. yum会自动安装依赖的包,(比如要安装一个a包 a包依赖b包,你要先装b包 才能装a包 yum是直接帮你安装好.) 源码包在windows下不常见.就是源代码,用编程语言写的各种文件,可以用编译器编译成可执行的文件. 源码包不容易搞定. yu

Python学习笔记 (第8课)

本节我们将学习python的另一种数据类型:集合(set) 1.集合(set) 集合在Python中是一种没有重复元素,且无序的数据类型,且不能通过索引来引用集合中的元素 >>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana'] >>> set(basket) set(['orange', 'pear', 'apple', 'banana']) set1-set2来获得在set1中的元素在

Android学习笔记二十七之ExpandableListView可折叠列表和StackView栈视图

Android学习笔记二十七之ExpandableListView可折叠列表和StackView栈视图 ExpandableListView可折叠列表 这一节我们介绍第三个用适配器的控件,ExpandableListView可折叠列表.这个控件可以实现我们在QQ中非常常见好友分组功能,ExpandableListView是ListView的子类,用法跟ListView差不多,下面我们来学习这个控件的基本使用: 常用属性: android:childDivider:指定各组内子类表项之间的分隔条,

centos samba/squid 配置 第二十七节课

centos  samba/squid 配置  第二十七节课 上半节课 下半节课 一. samba配置1. 什么是sambaSamba服务类似于windows上的共享功能,可以实现在Linux上共享文件,windows上访问,当然在Linux上也可以访问到.是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务. 注意:smb侦听端口:139  和  445  端口 2. 安装配置samba yum install -y samba samb