deepin linux 学习笔记(二)——文本编辑器
deepin linux 学习笔记(二)——文本编辑器
前言
今天来谈一下linux的编辑器,特别是命令行下面的文本编辑器。在视窗环境下有很多可以用,也很容易操作的文本编辑器,但是linux经常会需要在命令行下面编辑文本,比如一些配置文件的修改,这就要求要熟练相关的工具。
老实说,新手进入linux,往往会碰到过于强大的linux命令,强大的代价就是学习成本高。本来新手想做一件很简单的事情,但是却给了一件大杀器给他。比如文本编辑器vim就是这么一件大杀器。不过今天我也会介绍一个非常适合新手的友好小编辑器,它叫nano。
nano 小巧的命令行编辑器
nano a.x #编辑a.x
虽然是命令行工具,但是打开nano之后会有一种字符版的视窗的感觉,上面有标题栏,下面是菜单栏,通过快捷键可以操作菜单。其中^X表示Ctrl键+x键。M-表示Alt键。
比较常用的快捷键有:
通用
^G 帮助
^X 退出
^O 写入
^W 查找
^Q 反向查找
^L 刷新
^Z 挂起
编辑
M-U 撤销
M-E 重做
^K 剪切
^U 粘贴
M-shift 6 复制
M-A 标记
M-T 删除至结尾
M-V 插入按键原型
M-3 注释/反注释
^] 补全
定位
^_ 跳转到行列
M-] 移动到括号
M-W 重复上次搜索
M-up 向前搜索
M-down 向后搜索
^left 向前跳一单词
^right 向后跳一单词
home 行首
end 行尾
M-- 锁定游标平移到上一行
m-+ 锁定游标平移到下一行
^up 前一段
^down 后一段
M-shift ( 段落开头
M-) 段落结尾
^Y 上页
^V 下页
^home 全文起点
^end 全文终点
排版
^J 对齐段落
^T 自动排版
M-j 对齐全文
shitf Tab 取消缩进
配置
M-X 辅助模式
M-Y 语法高亮
M-I 自动缩进
M-shift 3 开关行号
虽然简单,但是复制粘贴操作和windows不一致,所以还是要记一下。如果想要玩的溜,那么对定位和标记的掌握就要更加熟练一些了。
比如复制全文,粘贴的操作:
^home | M-A | ^end | M-shift 6
全删的操作:
^home | M-T 或者^end | M-A | ^home | ^K
一般用剪切来完成删除操作,用标记完成选择操作,在选择的时候可以用定位操作来控制选择范围。注意游标的位置,操作结果和游标密切相关。
vim 思路独特的超级编辑器
vim这个编辑器,喜欢的人吹上天,但是对新手来说非常不友好。因为你不小心打开它,甚至不知道怎么退出而选择重启电脑。因此,vim必须经过正规学习,经专人指导使用才会比较愉快。
vim分三个工作模式:
- 命令模式 ESC键进入
- 插入模式 i键a键o键R键c键s键进入
- 底线模式 :键进入
vi a.x #打开a.x文件,进入命令模式
命令模式
打开文件后,界面比nano还要简单,几乎没有任何提示。在下方是状态栏。默认进入的是命令模式。所谓命令模式,它实际上重新定义了键盘的语义,所以在这模式下无法自由输入文字(这也是为何新手进入这个模式会手忙脚乱的原因)。可以将命令模式看做是一个高效的操作台,包含五类简短命令:
- 移动光标
- 立即命令
- 范围操作
- 特殊操作
- 双按键命令
移动光标
h 左,j 上,k 下,l 右
home 行首,end 行尾
+ 下行,- 上行
H 页开始行,M 页中间行,L 页尾行
gg 全文首行,G 全文尾行
30h #左30次
3回车 #下移3行
3空格键 #右移3字符
搜索替换
/str 向后搜索str,?str 向前搜索str,n 重复搜索,N 反向搜索
复制、粘贴、删除、合并行
x 相等于del键,X 相当于back键
c3h 删除前3个字符并进入插入模式
dd 删除一行
yy 复制一行
p 粘贴插入到下一行,P 粘贴插入到上一行
J 将下一行合并到本行
u 撤销,ctrl r 重做,. 重复上一次操作
dG #删除光标位置到全文结束,d+光标指令确定删除范围
cL #c+光标指令,并进入插入模式
存盘、退出
ZZ 存盘退出,
ZQ 不存盘退出
插入模式
命令模式下,然后:
- i 当前光标插入
- a 当前光标后插入
- I 行首插入
- A 行尾插入
- o 当前行下新增一行,插入
- O 当前行上新增一行,插入
- c+光标 删除范围内的字符,插入
- C 删除至行尾,插入
- r 替换当前字符,然后返回命令模式
- R 替换字符直到按Esc返回命令模式
- s 删除字符,插入
- S 删除行,插入
按Esc键返回命令模式。
底线模式(末行模式)
命令模式下按 :键进入底线模式,即在屏幕下方录入命令行。运行命令行后自动退回命令模式。基本上复杂的操作都是通过末行模式的命令行来实现的。
常用的命令行:
set nu #开启行号
set nonu #关闭行号
r a.x #读取a.x文件
1,3 co 4 #复制1至3行插入到4行后
1,3 m 5 #移动1至3行到5行后
1,3 d #删除1-3行
1,3 s/str1/str2/g #用str2替换str1,在1-3范围内
1,3 s/^/#/g #将1-3行注释掉
w a.x #保存到a.x
q! #不保存退出,!代表强制
wq #存盘并退出
!ls #输入外部命令
以上只是关于vim的九牛一毛的知识。因为一本比较丰富的vim教程大概有几百页的内容量吧。当然作为一个工具,光学习知识是没有作用的,关键在于平时使用积累。
deepin linux 学习笔记(二)——文本编辑器的更多相关文章
- linux/linux学习笔记-vim文本编辑器(mooc)
vim文本编辑器 vim与vi的区别:( vim=vi +IMproved) VIM是一个Unix以及类unix文本编辑器 特点:功能强大,高度可定制 vim编辑器的三种模式:一般模式.编辑模式和命令 ...
- deepin linux学习笔记
目录 deepin linux学习笔记 前言 linux常用命令 ls 显示文件夹内容 cd 切换当前目录 pwd 查看当前工作目录 mkdir 新建文件夹 rm 删除文件或文件夹 mv 移动文件 c ...
- Linux学习笔记(四) vi编辑器
一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...
- Linux学习笔记(二) 文件管理
了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...
- deepin linux学习笔记(四)进不去图形界面怎么办?
目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息 ...
- linux 学习笔记二
笔记二 命令行格式 command [-options] parameter1 parameter2 ... 命令 选项 参数(1) 参数(2) options 和 参数 不是必须的 帮助命令 man ...
- linux学习笔记二:三种网络配置
本文引用自:https://www.linuxidc.com/Linux/2017-05/144370.htm [linux公社] VMware为我们提供了三种网络工作模式,它们分别是:Bridged ...
- Linux学习笔记之VIM编辑器
此处根据需要,只罗列一些常用的指令和用法 五.VIM程序编辑器 Vi与vim Vi打开文件没有高亮注释,vim有,且vim是vi的高级版本 Vim默认打开文件为命令模式 i ...
- linux学习笔记二-----文件权限管理
一.分析文件权限(ln -s 文件名 快捷方式名 用来创建文件的快捷方式,下方ll查看信息时会在第一个字符处显示l) [hjp@bogon ~]$ ll total 4 drwxrwxr-x. 2 h ...
随机推荐
- c# 创建Excel com加载项图片对象批量操作
技术含量较低,主要是通过VBA代码转换成c#代码而来,从而实现图片批量插入.删除.另存为的批量操作,增加文档使用的通用性. 插件主要界面如下: 主要代码如下: private void button8 ...
- Api管家系列(三):测试和Rest Client
今天我们来看一下Api管家的测试功能 在项目首页可以看到,测试过的接口和未测试的接口,点击环型图能列出相应的接口 我们选择未测试的,这些接口我都已经实现好了,只是没有用API管家进行测试,所以还显示未 ...
- Postgres全文搜索功能
当构建一个Web应用时,经常被要求加上搜索功能.其实有时候我们也不知道我要搜索个啥,反正就是要有这个功能.搜索确实很重要的特性,这也是为什么像Elasticsearch和Solr这样基于Lucene的 ...
- git 版本库基础知识学习
什么是版本库?什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可 ...
- 排错-升级Exchange 2013 CU22后程序名称显示异常
近期在按需更新Exchange 2013 CU22补丁以便解决Microsoft Exchange Server ADV190007 Guidance for "PrivExchange&q ...
- 在docker私有仓库如何查看有哪些镜像?
搭建了docker私有仓库,上传了一些镜像,时间长了就会忘了有哪些镜像,在网上查了,有大佬是通过脚本查看的,多厉害! #!/usr/bin/env python#-*- coding:utf-8 -* ...
- Python初识+条件语句+循环语句
一.写照: 1.第一个程序 hello world print('hello world') 后缀名可以是任意(只是现在)(lx.py lx.ps) 导入模块时不是.py 就会出错 2.解释器路径 # ...
- 知识科普:IM聊天应用是如何将消息发送给对方的?(非技术篇)
1.引言 沟通是人类的最基本需求,复杂多变的沟通内容.沟通方式,正是人类文明之所以如此璀璨的关键所在. 在自然界中,要完成一件事情的沟通,我们可以直接通过声音传递给对方,这是再平常不过的事了(靠“ ...
- nginx反向代理配置
最近在项目中使用nginx反向代理,根据不同的请求路径,将请求分发到不同服务.下面的示例主要完成如下功能 /prod/路径的请求分发到prod服务 /test/路径的请求分发到test服务 创建文件夹 ...
- Python存储系统(Memcached)
Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. 本质上,它是一个简洁的key-value存储系统. 其主要用途有:动态数据库缓存.不同应用(语言)中共享数据 安装 安装及命令介绍 ...