文件编辑命令—vim

1.vim

vim 是vi的升级版本.vi 文件名(vi方向键用不了)

vim 的官方网站 (welcome home : vim online) 自己也说 vim 是一个程序开发工具而不是文字处理软件。

2.安装vim

sudo apt install vim

如果出错了:apt update:刷新软件源;

出现"无法获得锁 之类的"sudo rm 文件名注意:删除多次

3.vim的三种模式

命令模式,插入模式(编辑模式),末行模式

默认进入命令行模式;

用户刚刚启动vi/vim,便进入了命令模式.此状态下敲击键盘会被vim识别为命令,而非输入字符

(1)命令模式转为插入模式:

a:进入到当前光标后开始编辑

A:进入到当前光标所在的行末开始编辑

i:进入到当前光标位置开始编辑

I:进入到当前光标所在行的开头开始编辑;

o:进入到当前光标下一行开始编辑

O:进入到当前光标上一行进行编辑;

命令行模式

插入模式

未行模式

ESC

ESC

ATO

(2)命令模式转成末行模式

:对文本的设置或者保存工作;

/ 对文本进行全文向下搜索字符串

?对文本进行全文向上搜索字符串

4.vim末行模式的常用命令

:w 保存文本

:q 退出编辑

:wq保存并退出 :x (等同于wq)

:q!不保存(强制退出)

:w (路径) 文件名 另存为 路径可省略,省略了为当前路径下;

:n 跳转到第n行

补充命令:

:set nu 显示行号

:set nonu 取消行号

:set hlsearch 设置高亮搜索

:set nohlsearch 取消高亮搜索

:n,m s/oldstring/newstring 替换从n行到m行的第一个oldstring(比如一行出现多个,那么只替换每一行的第一个)

:n,m s/oldstring/newstring/g 替换从n行到m行的所有oldstring

(是否区分大小写,自己试(区分))

/string 向下搜索?string向上搜索

拓展:可以随着使用自己拓展一些命令;

5.vim/vi命令行模式的常用命令:

n dd:删除光标开始向下的n行;

n yy:拷贝光标开始向下的n行;

p:粘贴;

u:撤销上一次操作

ctrl+r:恢复上一次撤销操作;

r:替换一个字符;

shift+6:光标移动到当前行的开头;

shift+4:光标移动到当前行的末尾;

shift+g:光标移动到文本的最后一行;

gg:光标移动到第一行;

n shift +g:光标移动到第n行;

d n shift +g:删除光标到n行的内容;

y n shift+g:拷贝光标到n行的内容;

d G:删除从光标开始到末尾的内容

补充命令(了解):

命令模式下:

l:向右挪动光标;j:向下移动光标k:向上移动光标;h:向左移动光标;

6.更改vim配置文件

配置文件是为一些计算机程序配置参数和初始值的设置;

更改vim配置文件方法:

用管理员的身份打开配置文件vimrc,

sudo vim /etc/vim/vimrc

然后将如下的配置选项写入到该文件中末尾:

set nu

set tabstop=4

set softtabstop=4

set shiftwidth=4

set expandtab

set smartindent

相关推荐
派阿喵搞电子14 分钟前
Ubuntu下有关UDP网络通信的指令
linux·服务器·网络
Evan_ZGYF丶23 分钟前
【PCIe总线】 -- PCI、PCIe相关实现
linux·嵌入式·pcie·pci
舰长11531 分钟前
Ubuntu挂载本地镜像源(像CentOS 一样挂载本地镜像源)
linux·ubuntu·centos
程序员JerrySUN31 分钟前
全面理解 Linux 内核性能问题:分类、实战与调优策略
java·linux·运维·服务器·单片机
huangyuchi.1 小时前
【Linux】LInux下第一个程序:进度条
linux·运维·服务器·笔记·进度条·c/c++
帽儿山的枪手2 小时前
程序员必掌握的iptables五表五链
linux·网络协议
西阳未落2 小时前
Linux(14)——库的制作与原理
linux
444A4E2 小时前
深入Linux进程优先级:Nice值与O(1)调度器原理
linux·操作系统
Jooolin2 小时前
【编程史】Git是如何诞生的?这可并非计划之中...
linux·git·ai编程
云边有个稻草人2 小时前
【Linux系统】第八节—进程概念(上)—冯诺依曼体系结构+操作系统+进程及进程状态+僵尸进程—详解!
linux·进程·冯诺依曼体系结构·pcb·僵尸进程·进程的状态·task_ struct