Linux环境基础开发工具---vim

1.快速的介绍一下vim

vim是一款多模式的编辑器,里面有很多子命令,来实现代码编写操作。

2.vim的模式

vim一共有三种模式:底行模式,命令模式,插入模式。

2.1vim模式之间的切换

2.2 谈论常见的模式---命令模式,底行模式

2.2.1命令模式

光标移动:

vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、 「l」,分别控制光标左、下、上、右移一格

shift + 4 按「$」:移动到光标所在行的"行尾"

shift + 6 按「^」:移动到光标所在行的"行首"

按[gg]:进入到文本开始

按[shift+g]:进入文本末端

按[数字+shift+g]:跳转到数字指定行

按「w」:光标跳到下个字的开头(按照单词开始移动)

按「b」:光标回到上个字的开头(按照单词开始移动)

复制粘贴

「yy」:复制光标所在行到缓冲区。

「n + yy」:复制多行行到缓冲区。

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令都必须与"p"配合才能完 成复制与粘贴功能。

「n + p」:多次粘贴.

撤销

「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次回 复。

「ctrl + r」: 撤销的恢复

「dd」:删除光标所在行/剪切当前行

「n + dd」:删除光标所在行/剪切当前行

局部替换与大小写转换

shift + ·= \~ : 大小写快速转换

「r」:替换光标所在处的字符。

「n + r」:批量替换光标所在处的字符。

shift + r= R : 替换模式(ESC退出)

删除文字

「x」:每按一次,删除光标所在位置的一个字符

「n + x」:每按一次,删除光标所在位置的一个字符

「X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符

「n + X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符

查找

shift + 3 = # : 高亮要查找的函数名 ;按「n」会往前寻找到您要的关键字为止。

2.2.2底行模式

保存文件

「w」: 在冒号输入字母「w」就可以将文件保存起来

离开vim

「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。

「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

查找字符

「/关键字」: 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按 「n」会往后寻找到您要的关键字为止。

「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直 按「n」会往前寻找到您要的关键字为止。

! + command : 底行模式可以执行shell命令。

vs + filename : 多窗口,光标在那个界面就在编辑那个界面

ctrl + w + w : 多窗口之间的切换

set + nu : 标出行号

set + no + nu : 取消标出行号

批量化注释:

  1. ctrl + v

  2. hjkl 进行区域选择

  3. shift + i =I

  4. //

  5. ESC

批量化去注释:

  1. ctrl + v

  2. hjkl 进行区域选择

  3. d

3. 关于普通用户无法sudo的问题

因为,普通用户在sudo的时候只需要输入自己的密码,如果随意的一个用户都可以sudo,那么Linux的权限设置毫无意义,所以Linux添加了一个白名单,只有加入了白名单的普通用户才能进行sudo。

1.切换到root用户,打开 /etc/sudoers 文件

2.大概在100行的位置,把自己的用户名以100行的格式,加在102行就行了

相关推荐
用户9718356334662 小时前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪3 小时前
linux 拷贝文件或目录到指定的位置
linux
大树8819 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠19 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质19 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush419 小时前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行52020 小时前
Linux 11 动态监控指令top
linux
Inhand陈工20 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智21 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
不会C语言的男孩21 小时前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言