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教程大概有几百页的内容量吧。当然作为一个工具,光学习知识是没有作用的,关键在于平时使用积累。