春节期间,肺炎疫情非常严重,也不能出门,总结点东西吧。
一、vim操作
1.1 常用的编辑操作
1.1.1移动光标:
1使用方向键 上下左右
2 快捷键 上K下J左H右L
1.1.2复制粘贴操作
复制/粘贴单行文本:
在根目录下创建一个test目录,在test目录下使用vim创建并打开123.txt文件
打开默认是导航模式,按i键进入编辑模式,随便输入内容,然后按esc退出到导航模式
复制单行内容,例如要复制hello world,则将光标定位到hello world那一行的任意位置,然后按下yy(两次y键)进行复制,然后再按下p键,即可在原hello world那一行的下一行粘贴一行hello world
如果要复制多行内容,例如要复制123和hello world,则将光标定位到123那一行,按下shift+v,即可处于选中状态,然后使用上下键进行往上或往下选择,因为这里要复制 123和hello world,所以使用方向键下键,往下选择一行,此时即选中了两行(即123和hello world)
然后按y键复制,然后将光标移动到hello world那一行,按p键粘贴 ,即在原来的hello world那一行的下边粘贴123和hello world
注意:复制粘贴操作都是在导航模式下进行操作,在文档操作完成后,输入:(冒号进入命令模式,冒号后输入相关命令),即输入‘:wq’,保存并退出。
如果要把一个文档的部分内容复制到另外一个文件中:
Shift+v多选,然后y复制,:q退出当前文件,打开新文件 p粘贴。
1.1.3 删除操作
在导航模式下按下X键删除光标后一位字符,类似delete键功能,在编辑模式下,按backspace键回退删除光标前一个字符。
如果要删除单行文本,则在导航模式下光标定位到要删除的那一行 ,按下dd键即可,若要删除多行,则按多次dd键
1.1.4 误操作撤销与重做
误操作之后,后悔了,则在导航模式下按u键(undo),如果要重做则ctrl+r键(redo)
1.1.5 自动补全操作
在编辑文件时,输入部分字母,可以给出补全提示
此时在test目录下创建一个xiaomifeng1010.properties
输入一些内容:
已经编辑了两行内容,接下来如果再增加一行配置xiaomifeng1010.password
则只需输入x,然后按下ctrl+n,则会弹出补全提示
当然这里测试用的文本也可以从本地计算机上传一个文件(毕竟在linux里边编辑文本会相对麻烦),比如提前在本地计算机已经准备好了一个演示文件xiaomifeng1010.properties.
此时上传问价到服务器,需要先安装一个上传工具lrzsz:
输入命令 yum -y install lrzsz,安装工具
安装成功后,输入rz
会弹出选择文件的窗口:
然后选择xiaomnifeng1010.properties上传即可(还支持拖拽上传文件我是用的是SecureCRT,直接将文件拖拽到SecureCRT的窗口,按照提示即可完成上传)。
注意这个lrzsz工具其实挺好记的,rz是上传功能,从windows本地上传文件到linux服务器,而sz则是从linux服务器下载文件到windows本地。
例如现在要下载xiaomifeng1010.properties到本地,则命令为sz /test/xiaomifeng1010.properties
则会将xiaomifeng1010.properties文件下载到window系统的下载目录(默认下载位置)
传输完成,显示100%,查看windows系统目录
1.2 定位操作
1.2.1 显示和隐藏行号
在导航模式下,输入冒号进入命令模式,输入':set nu'命令显示行号,输':set nu!'隐藏行号
1.2.2 定位到下一行
在导航模式下,按O键进入编辑模式并将光标定位到下一行,shift+O则是定位到光标的上一行,并插入一行空白行
1.2.3 快速定位到文件的开头和结尾
定位到开头,在导航模式下,按两下G键,定位到结尾,Shift+G
1.2.4 快读定位到某一行
在导航模式下,输入冒号进入命令模式,然后输入对应的行号
例如,定位到第二行
1.3 查找和替换操作
1.3.1 查找文件中的关键字
在导航模式下,输入'/关键字';
先上传一个工作中用的一个文件 jdbc-oracle.properties,然后查看配置文件中数据库连接的密码,则在导航模式下输入'/password'
就为定位到第一个password的位置,如果要查看下一个password的位置,则按n键
1.3.2 批量替换(无需确认)
命令模式 :%s/旧内容/新内容/g
例如,刚才的文件,我要把gpump全部替换成xiaomifeng1010
操作为':%s/gpump/xiaomifeng1010/g ',会全部替换掉gpump而无需确认
1.3.3 批量替换(需要一个个确认)
命令模式 :%s/旧内容/新内容/gc (c即confirm确认)
会有一个提示,问你是否替换,y(yes)or n(not) ,此时输入y,就替换,输入n,则不替换。