shell编程中的vim命令说明
vim命令模式:
1、一般命令模式
2、编辑模式
3、底行命令行命令模式
一般命令模式 直接用字符操作
编辑模式 可以写文档(跟txt有点像)
底行命令模式 先按'ESC',在按下“:”,之后在输出命令
小注:用vim编辑命令: vim test.txt 或 vi test.txt
一开始进入的是编辑模式
| 1(一般命令模式)-->2(编辑模式) | 详情见下面2.1 |
| 1(一般命令模式)-->3(底行命令模式) | 直接在键盘上输入":",就可以进入该模式 |
| 2(编辑模式)-->1(一般命令模式) | 按键盘上的【ESC】键 |
| 2(编辑模式)-->3 (底行命令模式) | 2-->1-->3 |
| 3(底行命令模式)-->1(一般命令模式) | 用删除键删除":"便可以 |
| 3(底行命令模式)-->2(编辑模式) | 3-->1-->2 |
(注意:在下面命令中,开头带有“:”的,就是底行命令模式,其余的命令则是一般命令模式,编辑模式的命令没有写)
1、最常用的基本命令
| vi test.txt
Esc x Delete dd : wq q h j k l |
--用于新建一个文档或者编辑文档,进入之后就是命令模式
--退出编辑模式,进入命令模式 --命令模式下,相当于我们平时用的删除键。 --命令模式下,跟我们平时用的del键是一样的 --删除该光标所在的行,将整行都给删除掉。 --底下会出现一个[:],可以执行相应的语句实现某些功能,比如:退出保 --在按了 Esc-->: 命令后,在按wq并按回车键,表示强制退出保存。 --在按了 Esc-->: 命令后,在按q表示只退出不保存。 --命令模式,表示将光标向左移动,跟键盘上的【←】命令一样 --命令模式,表示将光标向下移动,跟键盘上的【↓】命令一样 --命令模式,表示将光标向上移动,跟键盘上的【↑】命令一样 --命令模式,表示将光标向右移动,跟键盘上的【→】命令一样 |
2、移动光标或滚动屏幕(一般命令模式)
|
选项 l or 右箭头 ^e(ctrl+e) |
说明 向右移动一个字符 将屏幕上滚一行 |
2.1 插入文本(一般命令模式-->编辑模式,常用)
|
命令 a |
插入动作 在光标后插入文本 |
2.2 替换操作
2.2.1 一般命令模式
|
命令 rchar |
替换操作 用 char 替换当前字符 |
2.2.2 底行命令模式
|
命令 :s /text1/text2 :g/text1/s/text2/text3 |
替换操作 在光标所在行中,将text1替换为text2 查找包含 text1 的行,将第一个text2替换为text3 |
2.3 查找操作(带“:”为底行命令模式,其他为一般命令模式)
|
命令 :set ic ftext |
查找操作 查找时忽略大小写 在当前行向前查找 text |
2.4 删除操作(带“:”为底行命令模式,其他为一般命令模式)
|
命令 :1,3d X |
删除操作 删除第1行到第3行的数据 向前删除数据 |
2.5 复制操作
|
命令 y0 |
说明 复制光标所在行中的首字母到光标所在的字母之间的数据(不包含光标上的字母) |
2.6 撤销与重复
|
命令 u |
说明 撤消最后一次修改 |
2.6 保存或退出文本操作
|
命令 :w |
说明 保存文件但不退出 vi |
2.7 底行命令的选项(set用法)
|
选项 :set all |
作用 打印所有选项 |
2.8 符号命令
|
选项 :.= |
作用 打印当前行的行号 |
2.9 定位段落和放置光标(一般命令模式)
|
选项 { |
作用 在第一列插入 { 来定义一个段落 |
2.10 连接行
|
选项 J |
作用 将下一行连接到当前行的末尾 |
2.11 shell转义命令
|
选项 :!command |
作用 执行 shell 的 command 命令,如 :!ls |
2.12 vim中的宏与缩写
(注意:避免使用控制键和符号,不要使用字符 K、V、g、q、v、*、= 和功能键)
|
选项 :map key command_seq |
作用 定义一个键来运行 command_seq,如 :map e ea,无论什么时候都可以 e 移到一个字的末尾来追加文本 |
2.13 vim中文本的缩进
|
选项 ctrl+i或 tab |
作用 插入文本时,插入移动的宽度,移动宽度是事先定义好的 |
大概就是这些了,如果有错误,请留言!
shell编程中的vim命令说明的更多相关文章
- Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||
https://blog.csdn.net/hack8/article/details/39672145 Linux Shell编程中的几个特殊符号命令 & .&& . || ...
- Shell编程中Shift的用法
Shell编程中Shift的用法 位置参数可以用shift命令左移.比如shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1.$2.$3丢弃,$0不移动.不带参数的shif ...
- Shell编程中while与for的区别及用法详解【转】
在shell编程中经常用到循环,常用的循环有for和while循环两种.while循环默认以行读取文件,而for循环以空格读取文件切分文件,本篇就结合现网的一些使用示例说说二者的用法和区别. 一.常用 ...
- shell编程中的if语句
if语句在任何编程中都是必不可少.至关重要的分支语句,shell也是如此,只不过各种编程中的方式和格式有点不太一样 shell编程中的if语句基本格式如下: if [ X$1 = XA ];then ...
- shell编程中的 三种结构: 条件if/选择结构case/循环for/while/until等结构 和 函数的用法
shell 函数的使用 (md中, 列表本身是有格式的, 他要产生缩进, 其次,列表项和列表项之间, 可以留有一个空行, 是合法的, 允许的) shell函数,就是 就相当于一个命令来看待和处理的, ...
- shell编程中的单/双 小括号, 中括号, 大括号
linux shell中的变量类型?分字符串或者数字或者bool类型吗? 参考: http://www.cnblogs.com/nufangrensheng/p/3477281.html 不分! sh ...
- [ SHELL编程 ] shell编程中数值计算方法实例
SHELL编程中经常会涉及到数值计算,有时候对于这些计算命令使用场景容易忘记或者混淆,这里针对常用的命令做个总结.主要包括let.bc.expr.(())等. 1.let 使用格式:let 表达式,表 ...
- shell编程中用户输入处理(shell 04)
shell编程中用户输入处理1.命令行参数2.脚本运行时获取输入 命令行参数 通过空格来进行分割的位置参数 :$+position $0,$1,$2 ....$0 :程序名$1,$2,$3 ... $ ...
- (转)轻松掌握shell编程中数组的常见用法及示例
缘起:在老男孩进行linux培训shell编程教学中,发现不少水平不错的网友及同学对数组仍然很迷糊,下面就给大家分享下数组的用法小例子,希望能给大家一点帮助.其实SHELL的数组很简单,好用.我们学习 ...
随机推荐
- Android NDK开发 Android Studio使用新的Gradle构建工具配置NDK环境(一)
本文主要讲述了如何如何在Android Studio使用新的Gradle构建工具配置NDK环境,现在把相关的步骤整理出来分享给Android程序员兄弟们,希望给他们在配置NDK环境时带来帮助. 从An ...
- python编程零碎积累
例行程序 def routine(): lastday = '' while True: day = datetime.datetime.now().strftime( ...
- MATLAB特殊矩阵以及矩阵转置
特殊矩阵 通用特殊矩阵 zeros函数:产生全0矩阵,即零矩阵. ones函数:产生....1矩阵,即幺矩阵. eye函数:产生对角线为1的矩阵,当矩阵是方正时,得到单位矩阵. rand函数:产生(0 ...
- zuul路由网关
zuul作为网关组件,主要用来管理api请求接口(统一对外暴露,负载均衡),身份认证,流量监控等.它是通过servlet来实现的,核心是一系列过滤器,可以在请求的发起跟相应返回阶段进行一系列的处理. ...
- React.js 小书 Lesson3 - 前端组件化(二):优化 DOM 操作
作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson3 转载请注明出处,保留原文链接和作者信息. 看看上一节我们的代码,仔细留意一下 change ...
- 【转】linux之pmap命令!
原贴:http://tonykorn97.itpub.net/post/6414/249221 linux之pmap命令! ====================================== ...
- 对于ESP、EBP寄存器的理解
原文:http://blog.csdn.net/yeruby/article/details/39780943 esp是栈指针,是cpu机制决定的,push.pop指令会自动调整esp的值: ebp只 ...
- EF Core 2.1 +数据库视图
1.参考文档 https://stackoverflow.com/questions/36012616/working-with-sql-views-in-entity-framework-core ...
- JavaScript Hacks
JavaScript Hacks,很多都是在网上看到的,觉得好就记下来了.在这里给大家推荐一个项目,里面很多代码片段都值得学习https://github.com/Chalarangelo/30-se ...
- Visual Studio无法推送提交到Github的解决方法
前言 当出现Visual Studio推送变更失败时,卸载系统中所有Git以及Visual Studio 的Git工具再重装即可 前情概要 今天由于要尝试使用RabbitMQ,所以打算先在本地做些小D ...