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的数组很简单,好用.我们学习 ...
随机推荐
- javascrip学习之基础
弹窗信息:三种消息框:警告框.确认框.提示框. window.alert("sometext"); var r=confirm("按下按钮");//提示信息,返 ...
- HDU - 6208 The Dominator of Strings HDU - 6208 AC自动机 || 后缀自动机
https://vjudge.net/problem/HDU-6208 首先可以知道最长那个串肯定是答案 然后,相当于用n - 1个模式串去匹配这个主串,看看有多少个能匹配. 普通kmp的话,每次都要 ...
- qt安装
在以下网页选择一个国内的下载地址即可 http://download.qt.io/official_releases/qt/5.7/5.7.0/qt-opensource-linux-x64-5.7. ...
- dos文件格式转换为Unix文件格式
做linux开发的,一般还是在windows上装个虚拟机,在windows上开发, 所以就会出现dos文件与unix文件格式不一致,当windows上的文件在linux上用的时候,经常在每行的末尾会出 ...
- 在cms以及kindeditor中插入百度动态地图的方法
想在网页中插入动态地图不难,直接打开网址http://api.map.baidu.com/lbsapi/creatmap/,然后按照提示操作,最终生成脚本,放到html文件中即可.而在kindedit ...
- JS获取元素属性、样式getComputedStyle()和currentStyle方法兼容性问题
1. getComputedStyle() 方法获取到的是经过计算机/浏览器计算后的样式 getComputedStyle($("#div")).width; 兼容性:IE6 7 ...
- Hack Knowledges
XSS(Cross-Site Scripting) Hacker PC -- upload XSS script to Web Server --> User PC Request for th ...
- Win2D 官方文章系列翻译 - 与 Direct2D 互操作
本文为个人博客备份文章,原文地址: http://validvoid.net/win2d-interop-with-direct2d/ Win2D 作为 Direct2D 的上层实现,支持与其进行双向 ...
- webapi 开启跨域支持
1.Global文件: GlobalConfiguration.Configuration.EnableCors(); 2.需要跨域的action或controller添加跨域规则 [EnableCo ...
- 软件测试技术第一次试验之——JUnit的安装与使用
众所周知,在一个大型的软件项目中,测试是必不可少的.传统的测试方法往往要自己编写测试函数再结合测试用例进行验证,这样会显得比较繁琐.所以我们可以使用JUnit框架进行测试. 使用junit的好处就是这 ...