文档章节

vim 编辑器

lambda_wjh
 lambda_wjh
发布于 2015/06/10 15:33
字数 2128
阅读 24
收藏 0
点赞 0
评论 0

==================================================================

VI编辑器


\

1、vi的基本概念

   基本上vi分为三种状态,分别是【命令模式】、【插入模式】、【末行模式】(last line mode)

2、 插入模式

   只有在【插入模式】中,才可以进行文字输入,可以按「ESC」键可回到命令模式。

3、 末行模式(last line mode)

   在命令模式下,输入:冒号,可以进入末行模式,此时,可以通过命令,将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

4、vi的基本操作

5、 进入vi

        在终端输入vi或vi 文件名,就进入vi全屏幕编辑画面;进入vi之后,首先处于「命令行模式」,按下i键,可进入到「插入模式」

6、 切换至插入模式

  在「命令行模式」下按一下字母「i」就可以进入「插入模式」,这时才可开始输入文字。编辑好内容后,想要保存的话,要先按一下「ESC」键,回到「命令行模式」先

7、 退出vi及保存文件

       当处于【插入模式】时,要先按「ESC」键,回到「命令行模式」;然后,在「命令行模式」下,按一下「:」冒号键进入「Last line mode」。此时,才可以执行相应的保存,退出等命令

: w 2.txt (将刚才编写的文本,以2.txt名称 写入磁盘,即保存到当前目录下)

: wq (写到磁盘并退出vi)

: q! (强制退出vi,并且不存盘)

8、命令行模式 下的命令,即功能键

按「i」切换进入插入模式,是从光标的前一个位置,开始输入文字;

按「a」进入插入模式,是从目前光标的下一个位置,开始输入文字;

按「o」进入插入模式后,是插入新的一行,并从新的一行的行首开始输入文字。

9、 从插入模式回到(切换)为命令行模式
  按「ESC」键

10、 在命令模式下,移动光标
  vi可以直接用键盘上的光标来上下左右移动,

vi也可以用小写英文字母「h」、「j」、「k」、「l」

分别控制光标左、下、上、右移一格。
  按「ctrl」+「b」:屏幕往“后”移动一页,即翻到上页pageUp。
  按「ctrl」+「f」:屏幕往“前”移动一页,即翻到上页pageDown。
  按「ctrl」+「u」:屏幕往“上”移动半页。
  按「ctrl」+「d」:屏幕往“下”移动半页。

  按数字「0」:光标移到所在行的开头。
  按「g」:移动到文章的最前面。

按「G」:移动到文章的最后面。

按「$」:移动到光标所在行的“行尾”。
  按「^」:移动到光标所在行的“行首”

  按「w」:光标跳到下个单词的开头
  按「e」:光标跳到下个单词的结尾
     按「b」:光标回到前个单词的开头

11、 删除文字

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

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

「dd」:删除光标所在行。
  「#dd」:从光标所在行开始删除#行,#代表任何数字

12、 复制和粘贴
  「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
  「#yw」:复制#个字到缓冲区
  「yy」:复制光标所在行到缓冲区。
  「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
       「p」:将缓冲区内的字符粘贴到光标所在位置。注意:所有与“y”有关的复制命令都
必须与“p”配合才能完成复制与粘贴功能。

13、 撤销上一次操作

「u」:如果误执行一个命令,可以马上按下「u」,撤销上一个操作。按多次“u”
可以执行多次回复。

14、 跳至指定的行
  「ctrl」+「g」列出光标所在行的行号。
  「#G」:例如,「4G」,表示移动光标至文章的第4行行首。

15、Last line mode下命令简介
  在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command m
ode」下后,再按「:」冒号即可进入「last line mode」。

15.1 、 列出行号
 「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。

15.2、 跳到文件中的某一行
    :「#」

「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,
如输入数字15,再回车,就会跳到文章的第15行。

15.3 、 查找字符

:「/关键字」

先输入冒号,再按「/」键,再输入您想寻找的字符,

如果第一次找的关键字不是想要的,可以一直按「n」,

就会往后寻找到想要的关键字为止。
    :「?关键字」

先输入冒号,再按「?」键,再输入您想寻找的字符,

如果第一次找的关键字不是想要的,可以一直按「n」

就会往前寻找到您要的关键字为止。

15.4 、 保存文件
    :「w」文件名

在冒号后输入字母「w」和文件名,就可以将文件保存起来。

:「q!」

在冒号后输入字母「q!」表示,退出vi编辑器,且不保存

       15.5、 离开vi

     :「q」‍‍

冒号后,按「q」就是退出,

如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。
     :「qw」

一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件(写到磁盘)。 

16、vim分屏功能

16.1 分屏启动vim

运用 大写的O参数来垂直分屏。 

    1. vim -On file1 file2 ...

    2. 运用 小写的o参数来水平分屏。 
      vim -on file1 file2 ...

     16.2 关闭分屏vim

     注释: n是数字,表示分成多个 屏。

    1. 关上 当前窗口。 
      Ctrl+W c

    2. 关上 当前窗口,如果只剩最后一个了,则退出Vim。 
      Ctrl+W q

     16.3 分屏vim

    1. 上下分割当前打开的文件。 
      Ctrl+W s

    2. 上下分割,并打开一个新的文件。 
      :sp filename

    3. 左右分割当前打开的文件。  
      Ctrl+W v

    4. 左右分割,并打开一个新的文件。 
      :vsp filename

    16.3 移动光标

        Vi中的光标键是h, j, k, l,要在各个屏间切换,只须要 先按一下Ctrl+W

    1. 把光标移到右边的屏。 
      Ctrl+W l

    2. 把光标移到左边的屏中。 
      Ctrl+W h

    3. 把光标移到上边的屏中。 
      Ctrl+W k

    4. 把光标移到下边的屏中。 
      Ctrl+W j

    5. 把光标移到下一个的屏中。. 
      Ctrl+W w

    16.4 移动分屏

        这个功能还是运用 了Vim的光标键,只不过都是大写。当然了,如果你的分屏很乱很复杂的话,这个功能可能会出现一些非常奇怪的症状。

    命令模式下:
    :new,新建文件并分屏, 快捷键,Ctrl+W,然后马上按n键
    :spilt 水平分屏,将当前屏分为两个,水平的。   Ctrl + w, s
    :vsplit 垂直分屏,将当前屏分为两个,垂直的。  Ctrl + w, v
    :only 取消分屏,取消当前的屏,当前屏指的是光标所在屏。

    关闭当前屏: Ctrl+w,c。

    3.如何切换焦点?

    Ctrl + w, w 后一个
    Ctrl + w, p 前一个

    Ctrl + w, h 四个方向
    Ctrl + w, i
    Ctrl + w, k
    Ctrl + w, l

    4.如何关闭其他窗口?

    Ctrl + w, o

    5.载入文件

    :vs  文件路径/文件名      在新的垂直分屏中打开文件

    :sv  文件路径/文件名      在新的水平分屏中打开文件

    命令模式下:
    :new,新建文件并分屏, 快捷键,Ctrl+W,然后马上按n键
    :spilt 水平分屏,将当前屏分为两个,水平的。   Ctrl + w, s
    :vsplit 垂直分屏,将当前屏分为两个,垂直的。  Ctrl + w, v
    :only 取消分屏,取消当前的屏,当前屏指的是光标所在屏。

    屏幕尺寸

    下面是改变尺寸的一些操作,主要是高度,对于宽度你可以使用Ctrl+W <或是>,但这可能需要最新的版本才支持。

    1. 让所有的屏都有一样的高度。 Ctrl+W =

    2. 增加高度。 Ctrl+W +

    3. 减少高度。 Ctrl+W -


    mac终端(terminal)里的快捷键

    Command + K 清屏

    Command + T 新建标签

    Command +W  关闭当前标签页

    Command + S  保存终端输出

    Command + D  垂直分隔当前标签页

    Command + Shift + D 水平分隔当前标签页

    Command + shift +  {或}向左/向右切换标签


==================================================================

Homebrew 


OS不可或缺的套件管理器

Homebrew安装:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装其他组件

$ brew install wget

==================================================================


本文转载自:http://www.2cto.com/os/201409/331710.html

共有 人打赏支持
lambda_wjh
粉丝 1
博文 2
码字总数 0
作品 0
杭州
Linux 下 vi/vim 文本编辑器超详细使用指南

Linux下的编辑器最常用的就是vim或者vi文本编辑。vi 和vim 编辑器的区别是vim是vi的改进版本,在vi 编辑器的基础上上扩展了很多实用的功能。 大多数的linux/unix 发行版本中都使用 vim 代替了...

LEAN_IN
2015/01/26
0
0
如何在任何地方使用 Vim 编辑器输入文本

本文导航 -在 Linux 中安装 Vim-anywhere13% -在任何地方使用 Vim 编辑器输入文本29% 各位 Vim 使用者大家好!今天,我这里有个好消息告诉大家。我会向大家介绍 Vim-anywhere,这是一个简单的...

13%
05/14
0
0
爱 Vim 的七个理由

当我刚刚开始用 vi 文本编辑器的时候,我憎恨它!我认为这是有史以来设计上最痛苦和反人类的编辑器。但我还是决定我必须学会它,因为如果你使用的是 Unix,vi 无处不在并且是唯一一个保证你可...

局长
2016/08/30
5.7K
37
Centos 下安装与设置VIM编辑器

我们在安装完Centos后,它默认的是安装了VI编辑器,VIM是没有安装的,所以我们在使用vim test.txt时会提示: vim command not found 。。。 这就是说明我们的Linux环境没有安装vim编辑器,下...

lk442634939
2017/12/15
0
0
51.vim

Vim简介: Vim的前身为vi(visual editor)编辑器,Vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,Vi是效率很高的文本编辑器。尽管在Linux上也有很多图...

闪电王
01/07
0
0
secureCRT,永久设置,保护眼睛,配色方案

配色后效果如下: 下面开始配色 1、选项(Options)==》会话选项(Sessions options)==》终端(Terminal)==》仿真(Emulation) 按图中标注进行勾选,勾选完毕点击确认 2、选项(Options)...

easy808
2017/11/06
0
0
为何Emacs和Vim被称为两大神器

在这个蔚蓝色的星球上,流传着两大神器的传说: 据说Emacs是神的编辑器,而Vim是编辑器之神。 追求独步天下的高手和低手们睁着一睹它们的风采, 可看到它们朴素单薄的界面后,不禁心下怀疑:...

红薯
2011/01/10
26.4K
75
vi和vim的区别

vi和vim它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。 vim的这些优势主要体现在以下几个方面: 1、多级撤消 我们知道在vi里,按...

vip1888
2017/12/25
0
0
2017-12-19Linux基础知识(18)vi编辑器

我们在上一节当中讲述了正则表达式(BRE, ERE),它们两个的正则表达式元字符书写方式有些不同,以及我们也讲述了grep和egrep和fgrep之间的关系也知道了如何使用,它是根据用户所指定的"PATTER...

刘祥宇
2017/12/20
0
0
VIM Pal 1.4.0 发布,VIM 文件树列表

VIM Pal 1.4.0 发布,增加了一个快速文件选择器,工具窗口模式可设置在 VIM Pad 窗口上。 VIM Pal 为 vim 编辑器提供一个文件树列表的功能,其目的并不是提供完整的 IDE ,只是一个文件树便于...

oschina
2014/04/27
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

TensorFlow 作用域与操作符的受限范围

variable_scope 影响变量和操作符 name_scope 只影响操作符 with tf.name_scope(""),使用空字符串将作用域返回到顶层 tf.variable_scope("") 相当于添加一个空层 import tensorflow as tf...

阿豪boy
4分钟前
0
0
Java面试基础篇——第六篇:常见Map类的区别

常见的map类有: HashMap, ConcurrentHashMap (Jdk1.8) , LinkedHashMap, TreeMap, Hashtable。 其中我们最常用的莫过于HashMap, 和并发情况下使用的ConcurrentHashMap了,它们的主要区别就在...

developlee的潇洒人生
6分钟前
0
0
崛起于Springboot2.X之前端模版freemaker(23)

1、配置文件 spring: freemarker: allow-request-override: false cache: true check-template-location: true charset: UTF-8 content-type: text/html ......

木九天
23分钟前
1
0
spring-boot:run启动时,指定spring.profiles.active

Maven启动指定Profile通过-P,如mvn spring-boot:run -Ptest,但这是Maven的Profile。 如果要指定spring-boot的spring.profiles.active,则必须使用mvn spring-boot:run -Drun.profiles=test......

夜黑人模糊灬
24分钟前
0
0
大数据分析挖掘技术学习:Python文本分类

引言 文本分类作为自然语言处理任务之一,被广泛应用于解决各种商业领域的问题。文本分类的目的是将 文本/文档 自动地归类为一种或多种预定义的类别。常见的文本分类应用如下: • 理解社交媒...

加米谷大数据
29分钟前
0
0
istio-0.8 指标监控,prometheus,grafana

配置: https://istio.io/docs/tasks/telemetry/metrics-logs/ https://istio.io/docs/tasks/telemetry/tcp-metrics/ envoy拦截请求>上报mixer>对接prometheus>grafana 效果截图: promethe......

xiaomin0322
31分钟前
0
0
公众号推荐

阿里技术 书籍:《不止代码》

courtzjl
34分钟前
0
0
关于改进工作效率

1.给不同的业务线建立需求群,所有的数据需求都在群里面提。 2.对于特别难搞定的事情,到对应的技术哪去做,有问题随时沟通。 3.定期给工作总结形成方法论。 4.学习新的技术,尝试用新的方法...

Avner
41分钟前
0
0
关于thinkphp 框架开启路径重写,无法获取Authorization Header

今天遇到在thinkphp框架中获取不到header头里边的 Authorization ,后来在.htaccess里面加多一项解决,记录下: <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews Rewrite......

殘留回憶
44分钟前
0
0
centos 使用yum安装nginx后如何添加模块 10

centos 使用yum安装nginx后如何添加模块 10 centos6.2版本,使用yum来安装了nginx,但是最近需要重新添加模块,所以就傻了,询问下有人知道怎么重新添加模块吗? PS:俺是新手,需要高手救助...

linjin200
48分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部