vi 打开vi空白面板

vi filename 以编辑模式打开文件。如果参数为已有文件,在vi中打开;如果参数为新文件名,在vi退出时提示用户保存编辑内容

vi -R filename 以只读模式打开文件

vi -o file1 file2 同时打开多个文件并全部查看 只能在一个文件中进行修改

vim file1 file2 查看一个文件

ctrl + ww 切换不同文件

:n 切换到后一个文件

:prex 切换到前一个文件

command mode

i 在当前光标位置之前插入文本

I 在当前行的开始处插入文本

a 在当前光标位置之后插入文本

A 在当前行的结尾处插入文本

o 在光标位置的下面为文本条目创建一个新行

O 在光标位置的上面为文本条目创建一个新行

n1-n2 替换:n1,n2s /old/new 指定区间替换内容

查找: / 字符

设置区分大小写: set ic 不区分大小写 set noic

dg 删除光标所在行到末尾

gg 转到第一行

G 转到最后一行

ng :n 到第n行

o 转到行首

$ 转到行尾

x 删除光标所在位置的字符

nx 删除光标所在处之后的n个字符

dw 从当前光标位置开始删除,一直到下一个单词

D 从光标位置开始删除,一直到当前行结束

dd 删除光标所在行

ndd 删除光标之后的n行

u 撤销上一步操作 可以连续使用

:n1,n2d 删除n1-n2之间的行

cw 修改光标所在位置的单词,修改范围是从游标位置一直到单词结束

r 替换光标所在位置的字符

R 覆盖从光标当前所在的字符开始的多个字符,按ESC结束

map 设置快捷键

map ctrl+v+letter

s 用输入字符替换当前字符

S 删除光标所在行,并用新文本替换,输入新文本后,仍处在插入状态

J 将当前行与下面的行合并为一行

yy 复制当前行

nyy 复制当前行以下n行

yw 复制当前单词

dd 剪切当前行

ndd 剪切当前行以下n行

p 将复制的文本插入到光标位置的后面

P 将复制的文本插入到光标位置的前面

string 搜索指定字符串

:%s/old_string/new_string 全文替换将old_string替换为new_string

:q 退出vi编辑器,如果对文件进行了修改,vi不能退出,返回编辑模式

:q!或:w!或:wq! 强行退出vi编辑器,无论对文件是否进行了修改,都将退出编辑器

:w 保存当前文件,如果用户正在编辑一个已有文件,直接保存。如果当前用户对该文件没有写入,将保存失败

:wq 或 zz 或 :x 保存并退出

:w filename 将文件保存在filename中,该命令将修改后的文件保存为另一个文件。如果用户启动vi时没有使用文件名作为参数,

那就必须使用这个命令,否则用户会丢失已做的修改。

:e! 打开文件上次成功保存的版本,以便在发现输入错误时,退回最近一次的保留版本

vim_command的更多相关文章

随机推荐

  1. Python Flask后端异步处理(一)

    Flask是Python中有名的轻量级同步Web框架,但是在实际的开发中,可能会遇到需要长时间处理的任务,此时就需要使用异步的方式来实现,让长时间任务在后台运行,先将本次请求的相应状态返回给前端,不让 ...

  2. 堆叠注入tips

    漏洞成因 使用mysqli_multi_query()这种支持多语句执行的函数 使用PDO的方式进行数据查询,创建PDO实例时PDO::MYSQL_ATTR_MULTI_STATEMENTS设置为tr ...

  3. 谈Vite在Electron环境下吃花卷拉馒头的现象

    缘起 在Electron的渲染进程中(也就是页面代码中), 我们常常使用process.env来携带一些环境变量, 比如HTTP服务地址的基质,本地静态资源的路径等 这样做主要有两个目的 一个是方便开 ...

  4. python的数据缓存

    Python的数据缓存 python 的内置数据类型,数值型,字符串,列表,字典等都会有自己的对象缓存池, 这样做的好处是,避免了频繁的申请内存,释放内存,这样会极大的降低应用程序的运行速度,还会造成 ...

  5. C语言中++*x和*++x的区别

    ++跟*的优先级一样,如果两个同时出现,运算是从右往左(不是常规的从左往右),所以: ++*x即++(*x),先取x的值,然后让值自加1:(地址没变,指针指向的值变了.搞不懂的话自己用快递做例子) * ...

  6. 工具-绿色使用软件等-破解pycharm,idea等Jet brain出品软件(99.2.1)

    1.下载此文件链接:https://pan.baidu.com/s/12nbtgeWiD1xKMtPIr-S1-g密码:b66f 并将 JetbrainsCrack-3.1-release-enc.j ...

  7. Containerd 的前世今生和保姆级入门教程

    原文链接:https://fuckcloudnative.io/posts/getting-started-with-containerd/ 1. Containerd 的前世今生 很久以前,Dock ...

  8. Windows 系统下Vue的安装及环境搭建

    Hope to help those in need and those who use Vue for the first time. 1.获得并安装node.js.nodejs官网:https:/ ...

  9. java中io流实现文件上传下载

    新建io.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" page ...

  10. easyui获取table列表中所有数据组装成json格式发送到后台

    jsp代码 var rows =$('#findAllRolestable').datagrid('getSelections'); var result = JSON.stringify(rows) ...