Linux菜鸟成长日记 ( vim程序编辑器及常见的文件管理命令)
vim程序编辑器及常见的文件管理命令
今天为大家介绍Linux的vim程序编辑器及常见的文件处理命令。
首先是vim了,这在我们未来的Linux生涯中尤为重要,在这里我介绍一些最常用的指令。
vim有三种模式:命令模式、插入模式和退出模式。
命令模式: 在终端命令符中直接用vim浏览文件进入的就是命令模式,在此模式下无法在文件中插入字符,但是可以对文件的工作方式进行修改。
这时候用到的指令为"set"
用vim进入文件后 输入“:set nu”可对文件内容进行行序标识。(也就是给每行开头加上对应的行号)
“set nonu”取消行序标示。
“set cursorline”对文件内容加上下划线,光标所到之处均能看到,使浏览更加方便。
“set mouse=a”在文将中可用鼠标对内容进行选取。
要注意的是: 在vim中直接设定的工作方式是临时的,即退出vim窗口后,所有设定均会失效。
若想永久设定,需要编写“/etc/vimrc”在其中最后插入上述指令。还需注意权限,有些文件只有超级用户能够修改。
如下为执行vim /etc/vimrc 在最后插入“set nu”储存成功后,以后的文件编辑中都可看到行序。
附上加有行序的文件的图片
在命令模式下管理字符
"x" 删除光标所在字符; 按"u" 恢复前一个操作; "ctrl+r" 撤销恢复;
"y"复制 : "yw" 复制一个单词
"yl" 复制一个字母
"yy" 复制一整行
"yny" 复制n行(n为数字,下同)
"c"剪切 : "cw" 剪掉一个单词
"cl" 剪掉一个字母
"cc" 剪掉一整行
"cnc" 剪掉n行
注:C做剪切时,会进入插入模式,若要粘贴需要退出插入模式按<ESC>再按P。
"d"删除 : "dw" 删除一个单词
"dl" 删除一个字母
"dd" 删除一整行
"dnd" 删除n行
"p" 粘贴
vim的可视化操作
vim中是不能用鼠标选择区域操作的,除了执行 “set mouse=a”外。若要操作某个区域,需要进入到可视化模式
1.进入可视化模式:
在命令模式下 "ctrl + v" 就可以进入到可视模式了
按键盘"上,下,左,右"移动光标选择区域,按相应操作键就可以对选择区域进行操作(H,J,K,L也可移动光标)
2.可视化模式下批量添加字符
将光标停留在想加入字符所在的列的第一行;
移动光标选择添加字符所在列;
"I"进入插入模式写入要插入的字符;
按"ESC"退出插入模式,字符批量添加成功
3 .vim的字符替换
:%s/原字符/新字符/g 全文替换
:1,5s/原字符/新字符/g 替换1到5行的字符
其中:g表示替换出现的所有关键字,如果不加"g"只替换每行出现的第一个。
4.vim总字符的查找及光标的移动
<1>字符查找:
“/”+关键字; n 向下查找; N 向上查找
<2>光标移动:
“:”+数字 光标移动到指定行
gg 光标移动到文件的第一行
G 光标移动到文件的最后一行
5.vim同时编辑多个文件
在vim下执行“ :sp + 文件名”,打开另一个文件;
按下“ctrl + w” 和键盘上键光标会进入上边文件窗口;
按下“ctrl + w” 和键盘下键光标会进入下边文件窗口;之后对相应文件进行编辑。
插入模式:对文件的内进行插入修改
在进入vim后,执行如下操作:
"i" 在光标所在位置插入字符; "I" 光标所在行的行首插入字符
"o" 光标所在行的下一行插入字符; "O" 光标所在行的上一行进行插入
"s" 删除光标所在字符并插入字符; "S" 删除光标所在行并插入字符
"a" 光标所在字符的下一个字符插入; "A" 光标所在行的行尾插入字符
退出模式:对文件进行编辑或者查看后退出时执行的命令。
“:q” 当vim进入文件没有对文件内容做任何操作时;
“:q! ” 当vim进入文件对文件内容有操作但不想保存时;
“:wq” 正常保存并退出
“:wq!” 强行保存退出,此命令需要考虑权限问题,只对超级用户或文件所有人生效。
vim 注意事项:
<1>编辑文件时:当文件名称存在,那么进入文件直接编辑
当文件名称不存在,vim会在退出保存时自动建立文件
<2>当vim异常退出时,系统会建立.文件名.swp这个缓存文件
这个文件中保存着异常退出前vim中对文件的编辑信息
当用vim对文件做编辑的时候会提示
例如用vim打开file文件 编辑后直接关闭窗口。下次执行"vim file"指令时会提示如下信息:
其中:O 只读打开
E 直接忽略.file.swap信息编辑文件
R 利用.file.swap进行数据恢复
D 删除.file.swap
Q 退出
A 终止
head,tail,less.用来显示文件的特殊部分方便查阅。
首先打开命令终端在里面进行操作:
head :head + 文件 显示文件的前几行(不加特殊命令为前十行)
head -n 1 文件 显示文件的第一行
head -n 7 文件 显示文件的前七行
tail : tail + 文件 显示文件的最后几行(不加特殊命令为后十行)
tail -n 1 文件 显示文件的最后一行
tail -n 5 文件 显示文件的最后5行
less :less + 文件 对文件进行分页浏览
对文件的各项数据进行观测是通过“wc”命令实现的
执行 wc + 文件 可统计文件的字数,字符数,字节数
例如 : wc /etc/passwd
wc + -l + 文件 显示文件行数 ; wc + -m +文件 显示文件字符数;
wc + -c 文件 显示文件字数 ; wc + -w + 文件 显示文件字数。
注:要注意的是对于 wc + -m, wc + -c 在显示文件字符数,字节数时每行的最后一个空白字节也会囊括在内。
如下所示,我建立的"me"文件直观来看应该是1个字符,但执行命令后会显示字符数为12。
file:用来查看文件类型
file + 文件 此命令可清晰查看到文件类型,防止“一叶障目”
例如:如下,建立一个名叫“Love story”.mp3的文件,然后用vim对其进行编辑,在桌面上显示图标为mp3文件,用在系统命令终端执行 file "Love story".mp3查看文件类型,为ASCII码文本文件.。
Linux菜鸟成长日记 ( vim程序编辑器及常见的文件管理命令)相关推荐
- linux学习笔记之--vim 程序编辑器
Vim是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和Emacs并列成为类Unix系统用户最喜欢的编辑器. 1 图解vim ...
- 鸟哥的Linux私房菜10.16 vim程序编辑器
第10章 vim程序编辑器 为什么要学习vim?--1.所有的Unix Like系统都会内建vi文书编辑器,其它编辑器不一定了:2.很多软件的编辑接口都会主动调用vi:3.vim具有程序编辑的能力,可 ...
- 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)...
第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编 ...
- 鸟哥的Linux私房菜(基础篇)- 第十章、vim 程序编辑器
第十章.vim程序编辑器 最近更新日期:2009/08/20 系统管理员的重要工作就是得要修改与设定某些重要软件的配置文件,因此至少得要学会一种以上的文字接口的文书编辑器.在所有的 Linux dis ...
- LINUX学习成长日记
LINUX学习成长日记 1. VMware TOOLS安装时注意事项. 如果在 VM虚拟机重新安装VMware tools是灰色的,那么需要调用VMware文件里面的linux.ios文件安装 然后选 ...
- linux系统中vi/vim文本编辑器的使用简介
linux系统中vi/vim文本编辑器的使用简介 1. vi/vim简介 vi/vim 是linux系统中最基本的编辑器,类似于windows系统中的记事本,几乎所有的linux开发版本都内置了v ...
- linux-basic(10)vim程序编辑器
[10.1]vi 与 vim [10.2]vi的使用 1)3种模式: 模式1:一般模式, vim打开就是这种模式,编辑模式下 按 esc 回到一般模式: 模式2:编辑模式,要等到你按下『i, I, o ...
- 【第九章】vim程序编辑器
文章目录 vi与vim vi的使用 范例 按键说明 一般指令模式可用的按钮说明:光标移动.复制贴上.搜寻取代等 一般指令模式切换到编辑模式的可用的按钮说明 一般指令模式切换到命令行界面的可用按钮说明 ...
- Linux系统学习关于Vim文本编辑器的使用介绍
Day04 cippus vim 文本编辑器 vi [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8jFPKIO1-1669517913499)(F:\桌面\src=h ...
最新文章
- Linux如何查看当前目录下文件的个数
- leetcode每日一题系列——787. K 站中转内最便宜的航班
- des算法java_Java加密算法笔记--DES算法实现
- lucene 索引流程整理笔记
- 上struts2的xml在lt;result type=quot;redirectquot;gt;参数问题
- Java 8 的 JVM 有多快?Fork-Join 性能基准测试
- Flex 布局教程实例
- Andorid获取状态栏高度
- python中ntlk报错及解决
- mysq show 指令
- 080520 雨 大风
- java frame linux_JAVA环境(下) - Android框架简介_Linux编程_Linux公社-Linux系统门户网站...
- 你的第一个Windows程序——绘制窗口
- html5客户端页面,iphoneX 适配客户端H5页面的方法教程
- kali2021安装RTL8188GU无线网卡[TL-WN726N]驱动
- leetcode:数组:1467自矩形查询
- 厨神之路六--凉拌菜
- 一文读懂麦克风典型应用电路
- “毒王”往事:熊猫烧香制造者的反转人生
- 买新不买旧?选购固态硬盘的几点建议