Linux命令之vi/vim(一)
vi仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但不具备windows下word的排版功能。Vim是Vi improved的缩写,是vi的改进版。
vi和vim的区别:
- 多级撤销。在vi中按u只能撤销上次命令,而在vim中可以无限制的撤销。
- 易用性。vi只能用于Unix中,而vim可以在Unix,Windows,Mac等多操作平台
- 语法加亮。Vim可以用不同的颜色加亮你的代码
- 可视化操作。就是说vim不仅可以在终端运行,也可以运行于x window、Mac OS、Windows。
- 对于vi的完全兼容。某些情况下,你可以把vim当成vi来使用
在使用vi –h和vim -h命令后,显示的都是vim的帮助信息。
vim [参数] [文件…] 编辑指定文件,如果文件名不存在,则会创建一个新的空白文件
vim [参数] – 从标准输入(stdin)读取文件
vim [参数] –t tag 编辑tag定义处的文件
vim [参数] –q [errorfile] 编辑第一个出错处的文件
(1).参数
-- 在这以后只有文件名
-v vi模式(同vi)
-e ex模式(同ex)
-E ex改进模式
-s 安静(批处理)模式(只能与ex一起使用)
-d Diff模式(同vimdiff)
-y 容易模式(同evim,无模式)
-R 只读模式(同view)
-Z 限制模式(同rvim)
-m 不可修改(写入文本)
-M 文本不可修改
-b 二进制模式
-l Lisp模式
-C 兼容传统的Vi:’compatible’
-N 不完全兼容传统的Vi:’nocompatible’
-V[ N][ fname] Be verbose [level N] [log message to fname]
-D 调试模式
-n 不使用交换文件,只使用内存
-r 列出交换文件并退出
-r (跟文件名) 恢复崩溃的会话
-L 同-r
-A 以Arabic模式启动
-H 以Hebrew模式启动
-F 以Farsi模式启动
-T <terminal> 设定终端类型为<terminal>
-u <vimrc> 使用<vimrc>替代任何.vimrc
--noplugin 不加载plugin脚本
-P[ N] 打开N个标签页(默认值:每个文件一个)
-o[ N] 打开N个窗口(默认值:每个文件一个)
-O[ N] 同-o但垂直分割
+ 启动后调到文件末尾
+<lnum> 启动后调到第<lnum>行
--cmd <command> 加载任何vimrc文件前执行<command>
-c <command> 加载第一个文件后执行<command>
-S <session> 加载第一个文件后执行文件<session>
-s <scriptin> 从文件<scriptin>读入正常模式的命令
-w <scriptout> 将所有输入的命令追加到文件<scriptout>
-W <scriptout> 将所有输入的命令写入到文件<scriptout>
-X 编辑加密的文件
--startuptime <file> 将启动时消息写入到file
-i <viminfo> 使用<viminfo>取代.viminfo
(2).实例
同时打开多个文件
方法一:以上下形式显示两个文件
[xf@xuexi ~]$ vim -o /etc/passwd /etc/hosts
还有 2 个文件等待编辑
此时会显示如下情况,/etc/passwd显示在上面,/etc/hosts显示在下面

方法二:以左右形式显示两个文件
f@xuexi ~]$ vim -O /etc/passwd /etc/hosts
还有 2 个文件等待编辑
此时会显示如下情况,/etc/passwd显示在左边,/etc/hosts显示在右边

注意:这两种方法想要将光标切换到另一边请看两次<Ctrl>+w;想要一次退出两个请输入:qa
Linux命令之vi/vim(二):https://www.cnblogs.com/diantong/p/9268681.html
Linux命令之vi/vim(一)的更多相关文章
- Linux命令:vi | vim命令
vim - vi 增强版.文本编辑器 格式:vim [options] [file ..] 说明:如果file存在,文件被打开并显示内容,如果文件不存在,当编辑后第一次存盘时创建它 [options] ...
- Linux环境下vi/vim编辑器常用命令
使用vi文本编辑器 配置文件是Linux系统中的显著特征之一,其作用有点类似于Windows系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式.那么如何使用Linux字符操作界 ...
- Linux编辑器|gedit|vi|vim编辑器
gedit编辑器 gedit是一个Linux环境下的文本编辑器,类似windows下的写字板程序,在不需要特别复杂的编程环境下,作为基本的文本编辑器比较合适. sublime编辑器 Sublime T ...
- Linux命令行及Vim简单学习记录
Linux命令行 1.打开命令行 Ctrl+Alt+t 2.目录 显示当前目录的文件列表 ls 跳转至当前目录中的x文件夹 cd x 返回根目录 cd 3.文件 新建文件1.cpp touch ./1 ...
- 【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作
Vi / Vim编辑器-编辑器工作模式.vi编辑操作 推荐一个很好的学习指南:http://www.oschina.net/translate/learn-vim-progressively 一.编辑 ...
- Linux文本编辑器-vi/vim
vi是Linux命令行界面下的文字编辑器,vim是vi的增强版(Vi IMproved),完全兼容 可以理解成普通的txt文本与word文档之间的差距. 注:还有一款全屏编辑器是nano,可以了解下 ...
- 对Linux命令进一步学习vim(二)
今天,进一步学习Linux相关的命令,可能会有重复的地方,但学习本来就是不断重复的过程.故作小记! 1.安装了:vim ,,,一款Linux爱好者经常用到的ide sudo apt-get inst ...
- Linux命令之vi篇
作业二: 1) 使用vi编辑器编辑文件/1.txt进入编辑模式写入内容“hello world” [root@localhost ~]# vi 1.txt 2) 进入命令行模式复制改行内容,在下方 ...
- 【Python Learning第一篇】Linux命令学习及Vim命令的使用
学了两天,终于把基本命令学完了,掌握以后可以当半个程序员了♪(^∇^*) 此文是一篇备忘录或者查询笔记,如果哪位大佬看上了并且非常嫌弃的话,还请大佬不吝赐教,多多包涵 以下是我上课做的一些笔记,非常的 ...
随机推荐
- [AT2558]Many Moves
题目大意:有$n$个位置$1,2,\dots n$:你有两个棋子$A$和$B$,你要进行$q$次操作,第$i$次操作给定一个$x_i$,你要选择一个棋子移动到$x_i$:求两个棋子最小移动的步数之和. ...
- vue.js 三种方式安装--npm安装
Vue.js是一个构建数据驱动的 web 界面的渐进式框架. Vue.js 的目标是通过简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易上手,便于与第三方库或既有项目整合. ...
- 洛谷 P3203 [HNOI2010]弹飞绵羊 解题报告
P3203 [HNOI2010]弹飞绵羊 题目描述 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一 ...
- [bzoj 2844]线性基+高斯消元
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2844 又用到线性基+高斯消元的套路题了,因为经过高斯消元以后的线性基有非常好的序关系,所以 ...
- 解析json方式之net.sf.json
前面转载了json解析的技术:fastjson,今天说下另外一种技术. 下载地址 本次使用版本:http://sourceforge.net/projects/json-lib/files/json- ...
- Java中文乱码问题(转)
解决JSP中文乱码问题 大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考.首先了解一下Java中文问题的由来: Ja ...
- CORS服务端跨域
跨域,通常情况下是说在两个不通过的域名下面无法进行正常的通信,或者说是无法获取其他域名下面的数据,这个主要的原因是,浏览器出于安全问题的考虑,采用了同源策略,通过浏览器对JS的限制,防止恶意用户获取非 ...
- es6+最佳入门实践(13)
13.模块化 13.1.什么是模块化 模块化是一种处理复杂系统分解为更好的可管理模块的方式.通俗的讲就是把一个复杂的功能拆分成多个小功能,并且以一种良好的机制管理起来,这样就可以认为是模块化.就像作家 ...
- 转:强化学习(Reinforcement Learning)
机器学习算法大致可以分为三种: 1. 监督学习(如回归,分类) 2. 非监督学习(如聚类,降维) 3. 增强学习 什么是增强学习呢? 增强学习(reinforcementlearning, RL)又叫 ...
- struts2学习笔记(三)
一. Struts2 的验证 1). 验证分为两种: > 声明式验证* >> 对哪个 Action 或 Model 的那个字段进行验证 >> 使用什么验证规则 >& ...