零.前言

本篇主要介绍Linux下文本编辑器vim的使用方法,以及sudo命令的实现。

1.什么是vim

在windows系统下,我们使用VS来编写代码,编译代码,调试代码,运行代码等,甚至还可以进行发布代码并进行代码关系的维护。这是因为微软已经将实现这些功能的工具全部都打包放入VS编译器中了。
而在Linux系统中,并没有这种集万般武艺于一身的东西,我们编写代码,编译代码,调试代码等功能的实现是由不同的程序来完成的。
其中,vim就属于文本编辑器,是可以编写代码的,但是不能调试代码,也不能执行代码。
早期的Linux编辑器使用的是vi进行文本的编辑,vi与vim的关系类似C于C++的关系。

2.配置vim环境

(1)手动配置

要进行手动配置我们还需要学一些vim指令的知识,这里先作为了解,看文章后面部分就可以理解了。
首先在我们自己的文件夹下建立一个名为.vimrc的文件。
建立之后我们可以vim进入这个文件,然后以插入模式向其中输入配置vim格式的命令即可。

(2)白嫖配置

这里给大家推荐一个配置程序:gitforcpp
这是一个在gitee上免费的开源项目,只需要在gitee上搜索gitforcpp
进入后下拉页面,找到这段安装程序:

将其复制后,在当前用户的文件夹下粘贴,然后直接回车即可,系统会自动安装配置。
注意,当前用户对vim的配置只对当前用户生效,对其他用户是不生效的。

3.vim的三种模式以及切换

注意,本文中shift表示常按。
vim一共有四种模式,分别是命令模式,插入模式,底行模式以及替换模式,替换模式我们尽量当成一种功能去使用,因此这里主要介绍三种模式,已经足够。
当我们直接输入vim时,显示的是当前vim的版本信息:

我们需要建立一个文件才能打开文件,比如建立一个test.txt文件,然后用vim打开它:

touch test.txt
vim test.txt


打开后我们会进入一个空白的文本界面。目前我们所处的模式叫做命令模式
如果我们想退出vim就需要先进入底行模式:shift+:。然后再输入q然后回车,即可退出vim。从底行模式进入命令模式可以通过Esc键。
我们发现我们现在是不能写入内容的,需要进入插入模式才能书写内容,此时需要输入i,即进入插入模式。当输入i时,我们发现下面出现了INSERT的字样。
同时我们也可以通过Esc键退出插入模式进入命令模式。

注意:只有当进入底行模式的时候才能退出vim,如果当前处于插入模式,那么就需要先进入命令模式,再进入底行模式,才能退出vim。插入模式和底行模式必须通过命令模式进行相互转换。
下面用一张图来表示三者的关系:

4.命令模式

(1)光标位置

上下左右移动光标

我们可以使用键盘上的上下左右键来移动光标,但是不建议这样做,因为在最初的键盘是没有上下左右键的,我们使用HJKL来代替上下左右键。下面给出记忆方法。

H:左,四个键中最左侧。
J:下,联想jump是向下跳。
K:上,联想king是高高在上的。
L:右,四个键中最右侧。

光标锚点位置

shift+^:跳转到光标所在行行首。
shift+$:跳转到光标所在行行尾。
gg:跳转到起始行。
shift+g:跳转到结束行。
n+shift+g:跳转到第n行。
b:以单词为单位,光标向前移动。
w:以单词为单位,光标向后移动。

有人说,直接用鼠标不香吗,小项目还好,如果遇到大项目好几千行代码,直接命令操作会更加容易一些,因此vim就是为处理大项目而生的。

进入插入模式

i:光标位置不变。
a:光标向前挪动一位。
o:光标新开启一行。

(2)文本操作

yy:复制当前行。
nyy:复制当前行以及当前行后的n-1行。
p:光标所在行后所有行后退一行,粘贴到光标所在行的下一行。
np:一次重复粘贴n行。
u:撤销(类似ctrl z)。
ctrl+r:撤销最近的撤销。
dd:删除并复制当前行(dd与p连用就是剪切操作)。
ndd:删除并复制当前行即后n-1行。
shift(按住)+不断按~:逐一改变大小写。
shift(按住)+~(按住):改变一行的大小写。
x:删除光标后的一个字符,支持nx(从左向右删)。
shift+x:删除光标前的一个字符,支持n(shift+x)(从右向左删)。
r:字符替换,eg.r+b的意思是将一个字符替换成b,支持nr即5r+x表示的是将5个字符替换成x。
shift+r:进入替换模式,输入内容后覆盖之后的内容,按Esc退出。

5.底行模式

在命令模式下输入shift+:进入底行模式。
进入底行模式后我们会发现我们输入的指令都会显示在最底行。
注意,每一次输入指令后回车后需要重新输入shift+:才能继续输入指令。

set nu:调出行号。
set nonu:关闭行号。
vs 文件名:分屏操作
ctrl+ww:光标多屏跳转,光标在哪个文件指令对哪个文件生效。(注意要在命令模式下使用该命令)
w:保存,w!表示强制保存。
q:退出,q!表示强制退出。
wq:保存并退出。wq!表示强制保存并退出。

6.vim添加sudo指令

在root用户下vim在 /etc/sudoers位置处。下面就可以处理如何添加sudo命令了。

vim /etc/sudoers


打开后在100行,模仿root添加自己的用户名即可,这里我添加的是lhb。表示信任lhb这个用户。
我们就可以使用sudo指令了。

Linux文本编辑器---vim详解相关推荐

  1. Linux文本编辑器-vim

    Linux文本编辑器-vim Vim简介 Vim是从vi发展出来的一个文本编辑器.其代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和Emacs并列成为类Unix系统用户最喜欢 ...

  2. Linux文本编辑器——vim

    Linux文本编辑器   ed  pico  emacs  nano  gVim  vim  vi   vim 是文本编辑器  不是文字处理工具(office  liboffice  wps)  你的 ...

  3. 10.18.1 linux文本编辑器vim

    vi和vim的区别 编辑一个文本时,vi不会显示颜色,而vim会显示颜色,vi 有点类似windows记事本,简单,那么就是vim复杂编辑器,功能复杂,高亮,自动缩进(写shell/python脚本用 ...

  4. Linux文本编辑器——vim编译器的全面讲解

    前言 这是我听老师讲课做的笔记,考试要看的. 这是视频地址 作者:RodmaChen 关注我的csdn博客,更多Linux笔记知识还在更新 vim编译器 一 概述 二 vim 编译器常用的操作命令 2 ...

  5. linux文本编辑器vim的基本使用

    文本编辑器用来创建或修改文本文件的. 三种工作模式:命令模式-->>编辑模式--->>命令行模式.模式切换:进入文件 --命令模式出现insert --编辑模式输入: --命令 ...

  6. Linux文本编辑器vim

    简介 vi: Visual Interface,文本编辑器 文本编码:ASCII, Unicode 文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi VIM - Vi IMproved ...

  7. linux下的vim详解(图文结合 )

    目录 准备工作: vim基本概念 vim的基本操作 三个模式之间的进入进出 打开vim 退出vim 插入模式insert 底行模式--command 三个模式中的操作详解 命令模式中的操作 底行模式c ...

  8. Linux文本编辑器Vim操作命令汇总!

    vim编辑器无疑是每个开发者都必须掌握的,通常在Linux的服务器操作文件内容都是需要使用到它的. 但是在使用时能够记住的vim命令又是少之又少,如果是专业运维人员的话可能就比较熟悉,但是我们开发人员 ...

  9. 【Linux】 - linux文本编辑器vim的常用操作

    文章目录 启动和退出 命令模式和插入模式 保存操作 光标移动命令 文本编辑操作 插入一行 删除文本 复制和粘贴 查找和替换 行内搜索 搜索整个文件 全局搜索和替换 启动和退出 [启动]:输入vim命令 ...

最新文章

  1. 2012年我的十大工程9——形象工程
  2. java object转int_Java字节码文件解析
  3. 安卓SurfaceFlinger框架初探
  4. angular1x初始与架构演进(二)
  5. sap可配置BOM的主要流程
  6. 日常生活中的法语积累2
  7. Java Socke 探究
  8. python如何输出两行_python pandas dataframe拆分行(某些行一行拆成多行)
  9. es5.0 安装head插件
  10. IP地址与子网掩码基础
  11. 用hudson配置持续集成CI服务器几个关键的配置
  12. mysql 5.7.20免安装_Windows下MySQL 5.7.20 免安装版配置
  13. html中div背景颜色渐变(透明 对角 附赠颜色查询对照表)
  14. python复合赋值语句语法_复合结构的赋值语句理解
  15. 2013 腾讯实习生招聘 武汉 一面
  16. linux格式化sd卡,并进行挂载
  17. oracle to_char 进制转换_〖Oracle 转载〗Oracle的数据类型转换 to_char
  18. aardio 多线程开发入门
  19. 看操作系统是x84还是x64啊
  20. photoshop中如何在6寸相纸上打印1寸照片10张2X5模式(自动填充模式)

热门文章

  1. Gnuradio+uhd驱动软件安装流程
  2. 安卓主板与pc主板通信_如何在Windows PC上检查主板型号
  3. c语言体测成绩判定,体测成绩纳入学生毕业成绩评定,你对它了解多少?
  4. 百度是挺进技术高地还是江郎才尽?
  5. 公交行业CPU卡总结(发卡,消费,充值)
  6. 热水IC卡预付费充值系统
  7. 【PS】60套精选品牌VI样机PSD素材
  8. 质量基础设施一站式公共服务平台建设,NQI系统开发
  9. 《电脑编程技巧与维护》杂志社
  10. 滑坡监测系统详细解决方案