Linux 基本操作 vim 篇


vim 简介


vim 是 Linux 上最基本的文本编辑工具,其地位像是 Windows 自带的记事本工具,还要少数的 Linux 系统自带 leafpad 编辑器,leafpad 的操作界面更像是 Win 的记事本,可以使用鼠标切换光标,自由删除,并且点击左上角的文件可以进行保存;但是 vim 编辑器却像是一个简单的指令工具,其操作必须依靠指令来完成,但是如果不会使用 vim 的话,是无法完成很多操作的,甚至对大多数只集成了 vim 的系统来说,不会使用 vim ,甚至无法安装 leafpad ,而在 Linux 系统中,刚装完的系统(国产系统除外)一定要进行换源,这时候就要使用到一个编辑器工具,如果你的系统只有 vim,最好还是学习一下如何使用 vim;

vim 三种模式


  • 只读模式:使用 vim 打开文件为 只读模式,此时只可以查看文件内容,无法对文件进行编辑;
  • 插入模式:即 编辑模式 ,此时可以对文件进行编辑,字符的插入或删除等操作;
  • 底行模式:类似于终端的命令行,此时可以输入命令,选择是保存文件 / 保存并退出 / 不保存退出 / 强制退出 等;

vim 基本命令


基本的编辑命令,学会后可以流畅操作 vim 编辑器;


  • 在进入 vim 之前,建议使用:sudo su 命令进入超级管理员模式,否则一些系统级的文件即使你编辑了,也无法进行保存;

  • 打开文件:打开控制终端,输入 vim + 一个文本的名字,就可以打开这个文本(打开当前目录下的文件只需要输入文件名,打开其他目录下的文件需要输入绝对地址);这个时候是“只读”模式,无法对文件进行编辑;

  • 编辑命令:进入文件之后,点击i(insert 缩写),进入编辑模式,这个时候可以自使用上下左右四个键控制光标,使用删除键删除,或输入任意字符;

  • 底行模式:对文件编辑好之后,点一下Esc键,进入底行模式,此时可以输入命令选择对文件的操作,基本命令如下(注:以冒号开头):

指令 效果 备注
:wq 保存 并 退出 保存文件并退出文件,返回到命令终端界面;
:q 退出 不保存,直接退出文件,返回到命令终端界面;
:q! 强制退出 提示无法保存的时候,加!可以强制退出文件,此时的文件缓存在内存中,并不会存回磁盘中;
:wq! 强制保存并退出 此时文件会被强制保存,并退出回到命令终端;

vim 进阶命令


进阶指令,学会后操作更方便,相当于魔法加成;


  • 光标控制
指令 效果 备注
:num 让光标跳到第 Xnum行首 只会跳到行首
:nd 删除第 n 行 d:delete
:n , md 从第 n 行删到第 m 行 m 不能超过最后一行,否则提示无效
  • 快速复制粘贴
指令 效果 备注
:n,my 复制第 n 行到 m 行的内容 按 p 粘贴(Paste)
:n,md 剪切第 n 行到 m 行的内容 按 p 粘贴(Paste)
  • 文本编辑(效果类似于各类编辑器的“编辑”功能)
指令 效果 备注
:%s#old#new#g 全局替换 g:全局 ;#不是代替空格用的,不可以删除;
:num s#old#new#g 在第 num 行查找old并将其替换成new 相对于上一条命令,加了一个范围:某一行;
:n , m s#old#new#g 在第 n 到 m 行查找old并将其替换成new 相对于上一条命令,扩大了范围,多行;-
  • 文件操作
指令 效果 备注
vsp xxx.c 左右分屏打开 xxx.c 文件 分屏应该很常见了,可以理解吧
sp xxx.c 上下分屏打开 xxx.c 文件
:w new xxx.c 将当前文件另存为 xxx.c 文件 可以使用绝对地址
:n ,mw new xxx.c 将当前文件的第 n 到 m 行另存为 xxx.c 文件 使用时候注意不要少了 w
:0r /etc/hosts 将/etc/hosts文件中的内容导入到此文件的开头
:$r /etc/hosts 将/etc/hosts文件中的内容导入到此文件的结尾
  • 搜索内容
指令 效果 备注
/word 在文件中搜索word这个单词
n 向下查找(下一个)
N 向上查找(上一个)
/word\c 忽略大小写,在文件中搜索word这个单词
:noh 取消高亮 退出“查找模式”

注意事项


  • vim 可以打开任意模式文件,不一定非得是 .c文件
  • 打开 / 另存为 的时候 最好加上绝对地址
  • $ 符号一般指最后( 行 / 字母 )

【Linux】中默认文本编辑器 vim 的入门与进阶的更多相关文章

  1. Linux常用命令——文本编辑器Vim

    Linux常用命令--文本编辑器Vim Linux  Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...

  2. 设置ISE/vivado中默认文本编辑器为gvim

    ise windows版,添加方式 ISE下点击菜单Edit -> Preferences -> Editor. 在Editor选项框里选择Custom,在Command line syn ...

  3. Linux中的代码编辑器vim

    Vim的三种工作模式 命令行模式 插入模式 底行模式 Vim 的命令行模式 命令行模式是进入vim后的初始模式,在该模式下主要是使用方向键来移动光标的位置,并通过相应的命令来进行文字的编辑. 切换方法 ...

  4. linux 学习5 文本编辑器 vim

    vim 没有菜单,只有命令 //root用户既可以用vi,也可以用vim, 无实质性区别,vim是vi的升级版//粘贴用shift+insert , 要在insert模式下粘贴,否则粘贴不全// ^ ...

  5. WordPress中默认文本编辑器替换成百度UEditor编辑器

    1.下载 下载地址: http://pan.baidu.com/s/1geNk19L 2.解压放到plugins目录下 3.插件启用

  6. Linux文本文件——文本编辑器Vim

    Linux文本文件——文本编辑器Vim 摘要:本文主要学习在Linux系统中使用Vim文本编辑器编辑文本. 什么是Vim Vim是一个基于文本界面的编辑工具,使用简单且功能强大.更重要的是,Vim是所 ...

  7. Linux系列教程(十)——Linux文本编辑器vim

    通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...

  8. Linux文本编辑器vim

    目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...

  9. LINUX文件内容处理及文本编辑器vim

    Linux基本操作命令 echo命令 echo命令: 把echo后面的内容显示到屏幕. -n 显示内容的时候不显示每行结尾的回车 echo 内容 >> 文件名 表示把内容加到一个文件的末尾 ...

随机推荐

  1. CentOS下Mysql的操作

    重启Mysql的各种方法 1.通过rpm包安装的MySQL service mysqld restart /etc/inint.d/mysqld start 2.从源码包安装的MySQL // lin ...

  2. QQFishing QQ钓鱼站点搭建

    答:为什么要写这个代码? 当然不是做黑产去盗别人扣扣,也没有啥查看别人隐私信息的癖好,搭建该站点的适用对象为->使用社会工程学定向钓鱼攻击的安全渗透人员 另外管理员界面后端写的很丑+很烂,除了我 ...

  3. DVWA SQL Injection LOW

    最近在学习SQL注入,初出茅庐,就从dvwa开始吧 sql注入可以通过sqlmap工具实现,为了更好地了解原理,这里主要是手工注入 注入的一般流程为: 1,找到注入点,此步骤可通过工具 2,判断注入类 ...

  4. AcWing 316 .减操作

    题目链接 大型补档计划 没想出来去看题解了... 关键是发现无论怎样括号嵌套,每个元素始终只有对答案的贡献为 + a[i] 或者 - a[i]. 而且第一个必然贡献是 +1, 第二个必然是 -1. 所 ...

  5. 关于获取客户端IP问题

    //相关代码 1.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] 2.HttpContext ...

  6. PhotoSwipe用法

    1.自动识别data-size问题,添加以下代码 gallery = new PhotoSwipe(pswpElement, PhotoSwipeUI_Default, items, options) ...

  7. 安卓实用工具箱v4.3几百种小功能

    款多功能实用工具箱.提供了从日常.图片.查询.设备.辅助.提取.优惠券.趣味游戏等多方面的功能,操作简单,即点即用,避免您下载超多应用的难题,且应用体积轻巧,界面简洁.已去除广告! 下载地址:http ...

  8. MySQL 锁(完整版)

    目录 锁总览 锁的作用 加锁流程 锁对数据库的影响 锁等待 死锁 锁类型 锁范围 锁方式 全局锁 全局读锁 全局QC锁 QC锁存在的问题: 备份锁 backup lock MDL锁 MDL锁类型 MD ...

  9. oracle归档空间不足的问题(rman删除归档日志)

    案例一:归档日志满,数据库用户无法登陆,业务异常   解决方案一(可以登录rman): rman target /   RMAN> crosscheck archivelog all;   RM ...

  10. Java基础语法吐血整理

    前言 自己的Java理论知识方面一直都不是很好,决定从0开始好好总结下,把想到的和以前不确定的(查阅资料确定)的知识整理一下,加油!!坚持!!! Java概述 Java三大体系 1.JavaSE 标准 ...