1.基本操作

进入vi

vi 或者 vim 进入一个文件或者新建一个文件
例如:vim 11.txt

vi有3种模式

一般模式:刚进入时、按esc时、
编辑模式:按下字母【i, I, o, O, a, A, r, R】、按 insert 键
命令行模式:按【 : / ? 】

移动光标

【h、j、k、l】,分别控制光标左、下、上、右移一格
键盘方向键有同样的效果

保存

按 : 键 进入命令模式 再输入w,回车即保存修改
:w

退出

:q 正常退出
:!q 强制退出, 再不保存修改时,直接退出

撤销

编辑了文档后,要撤销修改,在一般模式下按u进行撤销

恢复

当撤销多了时,要撤销已撤销的内容,按ctrl + r 进行恢复

删除

x为向后删除一个字符 (相当于【del】键)
X 为向前删除一个字符(相当于【backspace】键)

定位但某行

:n ,n为 具体的数字 。如 :3,定位到第3行

2.复制拷贝删除

该操作都是在一般模式下边操作

复制

yy 复制一行
nyy复制多行,n代表具体的数字,如:3yy为复制光标所在行一下的3行数据

拷贝

p将已复制的数据在光标下一行粘贴上

删除

dd删除一行
ndd删除多行,n代表具体的数字

3.查找

在一般模式下,按 / 或 ? 进入命令模式

查找字符串

/nnnn 或 ?nnnn   ,nnnn为需要查找的字符串
/word:向下寻找一个名称为word的字符串。
?word:向上寻找一个名称为word的字符串。

查找字符串并显示格式

:%s/nnnn//gn   ,nnnn为需要查找的字符串

查找的结果中移动

n向下一个移动
N向上一个移动

4.设置

全局行号显示

:set nu,显示行号
:set nonu,与 set nu 相反,为取消行

自动缩进

:set ai ,自动缩进
:set noai,取消自动缩进

附常用设置

:set all 显示目前所有的环境参数设定值
:set hlsearch 高亮度反白(高亮度搜寻)
:set nohlsearch 取消高亮度反白(高亮度搜寻)
:set backspace=2 在编辑的时候可随时用退格键删除 (0、1的时候,只针对刚输入的字符有效)
:set autoindent 自动缩排
:set noautoindent 取消自动缩排
:set ruler 可显示最后一行的状态
:set showmode 左下角那一行的状态
:set nu 显示行号
:set nonu 取消行号
:set bg=dark 显示不同的底色色调
:syntax on 进行语法检验,颜色显示
:syntax off 关闭语法检验

5.打开多个文件:

1.vim还没有启动的时候:

在终端里输入
vim file1 file2 ... filen便可以打开所有想要打开的文件

2.vim已经启动

输入
:open file
可以再打开一个文件,并且此时vim里会显示出file文件的内容。

3.同时显示多个文件:

:split
:vsplit :vs 文件路径/文件名 在新的垂直分屏中打开文件
:sv 文件路径/文件名 在新的水平分屏中打开文件

4.在文件之间切换:

1.文件间切换
Ctrl+6—下一个文件
:bn—下一个文件
:bp—上一个文件
对于用(v)split在多个窗格中打开的文件,这种方法只会在当前窗格中切换不同的文件。 2.在窗格间切换的方法
Ctrl+w+方向键——切换到前/下/上/后一个窗格
Ctrl+w+h/j/k/l ——同上
Ctrl+ww——依次向后切换到下一个窗格中

5.关闭文件:

单个文件 :q 就可以了
关闭所有: qa

linux vi常用操作的更多相关文章

  1. (转)vim(vi)常用操作及记忆方法

    vim(vi)常用操作及记忆方法 原文:https://www.cnblogs.com/doseoer/p/6241443.html vi(vim)可以说是linux中用得最多的工具了,不管你配置服务 ...

  2. linux学习(2):linux服务器常用操作和命令

    linux服务器常用操作和命令 目录 1. 什么是linux服务器load average?2. 如何查看linux服务器负载3. 服务器负载高怎么办?4. 如何查看服务器内存使用率?5. 如何查看单 ...

  3. vim(vi)常用操作及记忆方法

    vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...

  4. Linux下常用操作

    ************************ 镜像操作 ************************************* screen -s name 新建 screen -r name ...

  5. Linux vi常用命令

    vi常用命令[Ctrl] + [f] 屏幕『向前』移动一页(常用)[Ctrl] + [b] 屏幕『向后』移动一页(常用)0 这是数字『 0 』:移动到这一行的最前面字符处(常用)$ 移动到这一行的最后 ...

  6. linux vi编辑器操作手册

    简介 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功 ...

  7. Vim/Vi常用操作(第二版)

    周围同事不是用vim就是Emacs,你要是用一ultraedit,你都不好意思跟人家打招呼;什么插件呀,语法高亮呀,拼写检查呀,能给它开的都给它开着,就是一个字儿:酷. 你说这么牛B一东西,怎么着学会 ...

  8. vi常用操作

    什么是vi: vi是Linux/Unix底下最常用的文本编辑器,可以理解为和Windows下的txt一样,咱们一般操作linux服务器的时候都是没有图形化界面的, 怎么移动光标,到哪个位置,替换修改什 ...

  9. linux 文件常用操作

    linux 文件基本操作 新建文件:touch test 不会替换重名文件,并且linux一切都是文件,文件夹和文件不能重名 新建文件夹:mkdir test使用 -p 参数,同时创建父目录(如果不存 ...

随机推荐

  1. 记录:EPALN Electric P8 2.4.4.8366 安装记录

    系统:win7  32位 旗舰版.  (原版系统 非GHOST) 第一步:解压安装. setup.exe 右击 选择 注意:把  360  百度 杀毒之类的全部关闭 第二步: 第三步: 第四步: 第五 ...

  2. Qt编译出错:“Cannot find file...... .pro."

    刚接触Qt,使用Qt5.7时,出现如下编译错误: 其实原因很简单,就是Qt工程目录不能有“中文”.“全角符字符”[暂时发现这两种情况].

  3. Keras实践:模型可视化

    Keras实践:模型可视化 安装Graphviz 官方网址为:http://www.graphviz.org/.我使用的是mac系统,所以我分享一下我使用时遇到的坑. Mac安装时在终端中执行: br ...

  4. uva473

     Raucous Rockers  You just inherited the rights to n previously unreleased songs recorded by the pop ...

  5. Codeforces Round #265 (Div. 2) E

    这题说的是给了数字的字符串 然后有n种的操作没次将一个数字替换成另一个字符串,求出最后形成的字符串的 数字是多大,我们可以逆向的将每个数推出来,计算出他的值和位数记住位数用10的k次方来记 1位就是1 ...

  6. python pytz 结合时区的日期操作

    有一个安排在2012 年12 月21 日早上9:30 的电话会议,地点在芝加哥.而朋友在印度的班加罗尔,那么他应该在当地时间几点参加这个会议呢? 对几乎所有涉及到时区的问题,你都应该使用pytz 模块 ...

  7. ListView的ScrollBar设置

    默认ListView的滑动时,右侧会有滑动条显示,等ListView滑动结束时,滑动条消失.修改ScrollBar的显示可以在XML以及CODE中实现. CODE中实现:1.setFastScroll ...

  8. Qml应用程序的性能考虑与建议

    本文翻译自Qt官网文档: http://doc.qt.io/qt-5/qtquick-performance.html QtQml应用程序的性能考虑与建议 1.时间考虑 作为一名程序开发者,应该努力使 ...

  9. centos6.5搭建svn

    检查已经安装版本  rpm -qa subversion如果存在旧版本,卸载yum remove subversion 安装svn yum install subversion 验证是否安装成功 sv ...

  10. P1941 飞扬的小鸟(背包)

    P1941 飞扬的小鸟 细节题 上升是完全背包 下降是01背包 (数组访问越界本机怎么能过???(大雾)) #include<iostream> #include<cstdio> ...