IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> vim程序编辑器之vim(vi)的使用 -> 正文阅读

[系统运维]vim程序编辑器之vim(vi)的使用

目录

vi的使用

搜寻与取代:

删除,复制与贴上:

指令列模式:

vim额外功能

区块选择

多档案编辑

多窗口功能

其它vim使用注意事项

中文编码的问题

DOS与Linux的断行字符

语系编码转换


vi的使用


移动光标:h,j,k,l:向左向下向上向右
30j:向下移动30行
ctrl+f:向下移动一页
ctrl+b:向上移动一页
n空格键:光标向右移动这一行的n个字符
n回车键:光标向下移动n行
0:移动到这一行最前面的字符处
$:移动到这一行最后面的字符处
H,M,L:移动到屏幕最上方/中央/最下方的第一个字符
G:移动到这个档案的最后一行
nG:移动到这个档案的第n行
gg:移动到这个档案的第一行

搜寻与取代:


/word:向光标之下寻找一个名称为word的字符串
?word:向光标之上寻找一个名称为word的字符串
n:重复前一个搜寻的动作,N与n相反
:n1,n2s/word1/word2/g:在n1行与n2行之间寻找word1这个字符串,并将该字符串取代为word2
:1,$s/word1/word2/g:从第一行到最后一行寻找word1字符串,并将该字符串取代为word2
:1,$s/word1/word2/gc:同上,但会显示提示字符给用户确认是否需要取代

删除,复制与贴上:


x,X:在一行字当中,x为向后删除一个字符,X为向前删除一个字符
nx:n为数字,连续向后删除n个字符
dd:删除游标所在的一整列
ndd:删除游标所在的向下n列
yy:复制游标所在的那一行
nyy:复制游标所在的向下n列
p,P:p将已复制的数据在光标下一行贴上,P为贴在游标的上一行
u:复原前一个动作
ctrl+r:重做上一个动作
.(小数点):重复前一个动作

一般模式切换到编辑模式的可用按钮:i,a,o,r

指令列模式:


:W:将编辑的数据写入硬盘档案中
:q:离开vi
:q!:强制离开
:wq:储存后离开
:wq!:强制储存后离开
:w [filename]:将编辑的数据储存成另一个档案
:n1,n2 w [filename]:将n1到n2的内容储存成filename这个档案
:! 命令:暂时离开vi到指令列模式下执行命令的显示结果
:set nu:显示行号
:set nonu:取消行号


vim额外功能
?

区块选择


v:字符选择,将光标经过的地方反白
V:行选择,会将光标经过的行反白
ctrl+v:区块选择,可以用长方形的方式选择资料
y:将反白的地方复制起来
d:将反白的地方删除

多档案编辑


:n:编辑下一个档案
:N:编辑上一个档案
:files:列出当前vim开启的所以档案

多窗口功能


:sp [filename]:开启一个新窗口,如果有加filename,表示在新窗口开启一个新档案,否则表示两个窗口为同一档案内容
ctrl+w+j:移动到下方窗口
ctrl+w+k:移动到上方窗口
ctrl+w+q:结束离开


其它vim使用注意事项


中文编码的问题


1.linux系统默认支持的语系数据:与/etc/sysconfig/i18n有关
2.终端界面bash的语系:与LANG这个变数有关
3.档案原本的编码
4.与开启的终端机软件有关

DOS与Linux的断行字符


dos2unix [-kn] file [newfile]
unix2dos [-kn] file [newfile]
-k:保留该档案原本的mtime时间格式
-n:保留原本的旧档,将转换后的内容输出到新档案,dos2unix -n old new

语系编码转换


iconv --list
iconv -f 原本编码 -t 新编码 filename [-o newfile]
--list:列出iconv支持的语系数据
-f:后接原本的编码格式
-t:后来的新编码格式
#将vi.big5转成utf8编码
#cd /tmp/vitest
#iconv -f big5 -t utf8 vi.big5 -o vi.utf8
?

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-13 22:13:16  更:2022-03-13 22:15:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 1:50:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码