1

时间:2017年08月24日星期四

说明:本文部分内容均摘取自书籍《Linux命令行与shell脚本编程大全》,版权归原作者所有。《Linux命令行与shell脚本编程大全》(第三版)第十章学习总结

第十章:使用编辑器

本章内容

vim编辑器
namo编辑器
emacs编辑器
KWrite编辑器
Kate编辑器
CNOME编辑器

10.1 vim编辑器

10.1.1 检查vim软件包

命令格式:readlink -f /usr/bin/vi
命令说明:查看vi文件的链接,输入vi命令时,使用vim编辑器
命令格式:sudo apt-get install vim
命令说明:在Ubuntu发行版中安装基础版的vim包

10.1.2 vim基础

命令格式:vim file_name
命令说明:启动vim编辑器编辑指定文件
命令演示:vim myprog.c
命令说明:使用vim编辑器在内存缓存区中编辑myprog.c文件

vim编辑器有两种操作模式

普通模式:当打开要编辑的文件时,进入普通模式,vim会将按键解释成命令
插入模式:在插入模式下,可以进行字符输入。
模式切换:按 i 键进入插入模式,按 esc 键退出插入模式回到普通模式

在普通模式下,移动光标相关命令

h:左移一个字符
j:下移一行(文本中的下一行)
k:上移一行(文本中的上一行)
l:右移一个字符
PageDown(或Ctrl+F):下翻一屏
PageUp(或Ctrl+B):上翻一屏
G:移到缓冲区的最后一行
num G:移动到缓冲区中的第 num 行
gg:移到缓冲区的第一行

在普通模式下有个特别的功能叫命令行模式。在普通模式下按下冒号键进入命令行模式。

在命令行模式下有几个命令可以将缓冲区的数据保存到文件中并退出vim

q:如果未修改缓冲区数据,退出
q!:取消所有对缓冲区数据的修改并退出
w filename:将文件保存到另一个文件中
wq:将缓冲区数据保存到文件中并退出

10.1.3 编辑数据

在普通模式下,vim用来编辑缓冲区中数据的常用命令

x:删除当前光标所在位置的字符
dd:删除当前光标所在行
dw:删除当前光标所在位置的单词
d$:删除当前光标所在位置至行尾的内容
J:删除当前光标所在行行尾的换行符(拼接行)
u:撤销前一编辑命令
a:在当前光标后追加数据
A:在当前光标所在行行尾追加数据
r char:用char替换当前光标所在位置的单个字符
R text:用text覆盖当前光标所在位置的数据,直到按下ESC键

有些编辑命令允许使用数字修饰来制定重复该命令多少次

命令演示:2x
命令说明:会删除从光标当前位置开始的两个字符
命令演示:5dd
命令说明:会删除从光标当前所在行开始的5行

说明:在vim编辑器的普通模式下使用退格键(Backspace键)和删除键(Delete键)时要留心。vim编辑器通常会将删除键识别成 x 命令的功能,删除当前光标所在位置的字符。vim编辑器在普通模式下通常不识别退格键。

10.1.4 复制和粘贴

命令演示:v
命令说明:进入可视模式,移动光标来覆盖你想要复制的文本
命令演示:y
命令说明:覆盖想要复制的文本后,按下 y 键即可复制文本且自动退出可视模式回到普通模式
命令演示:p
命令说明:粘贴复制后的文本

10.1.5 查找和替换

在普通模式下按下斜线(/)键,输入需要查找的文本后,按下回车键,vim会采用以下三种回应中的一种

1.如果要查找的文本出现在光标当前位置之后,则光标会跳到该文本出现的第一个位置。
2.如果要查找的文本未在光标当前位置之后出现,则光标会绕过文件末尾,
出现在该文本所在的第一个位置(并用一条消息指明)
3.输出一条错误消息,说明在文件中没有找到要查找的文本

当查找出多个结果是,(按斜线键然后回车键)或(按n键),显示下一个(next)。

替换命令需进入命令行模式才能使用

命令格式:s/old/new/
命令说明:vim编辑器会跳到 old 第一次出现的地方,并用 new 来替换

可以对替换命令作一些修改来替换多处文本

s/old/new/g:一行命令替换所有old
n,ms/old/new/g:替换行号n和m之间所有old
%s/old/new/g:替换整个文件中的所有old
%s/old/new/gc:替换整个文件中的所有old,但在每次出现时提示

10.2 nano编辑器

命令格式:nano mygrop.c
命令说明:打开mygrop.c文件,将文件内容读入缓冲区,
如果文件不存在,则会开辟一段新的缓冲区进行编辑。

nano控制命令

CTRL+C:显示光标在文本编辑缓冲区中的位置
CTRL+G:显示nano的主帮助窗口
CTRL+J:调整当前文本段落
CTRL+K:剪切文本行,并将其保存在剪切缓冲区
CTRL+O:将当前文本编辑缓冲区的内容写入文件
CTRL+R:将文件读入当前文本编辑缓冲区
CTRL+T:启动可用的拼写检查器
CTRL+U:将剪切缓冲区中的内容放入当前行
CTRL+V:翻动到文本编辑缓冲区中的下一页内容
CTRL+W:在文本编辑缓冲区中搜索单词或短语
CTRL+X:关闭当前文本编辑缓冲区,退出nano,返回shell
CTRL+Y:翻动到文本编辑缓冲区中的上一页内容

10.3 emacs编辑器

10.3.1 检查emace软件包

命令演示:wich emacs
命令说明:查看emace是否已经安装
命令演示:yum list emacs(基于Red Hat的发行版)
命令说明:查看emace是否已经安装
命令演示:sudo apt-cache show emacs(基于Ubuntu发行版)
命令说明:查看emace是否已经安装
命令演示:sudo apt-get install emacs(基于Ubuntu发行版)
命令说明:安装emacs编辑器
命令演示:sudo yum install emacs(基于CentOS发行版)
命令说明:安装emacs编辑器

10.3.2 在控制台中使用emacs

命令格式:emacs mygrop.c
命令说明:编辑mygrop.c文件

和vim编辑器不同,emacs只有一个模式。如果你输入可打印字符,emacs就将它插入到光标当前位置,如果你输入一个命令,emacs就执行命令。

Tip:emacs编辑器使用时,命令比较难以理解和记忆。不推荐使用。

10.3.3 在GUI环境中使用emacs

在图形化界面上使用emacs,这个比较简单。类似于Windows上使用editplus、notepad++等编辑软件。

10.4 KDE系编辑器

10.4.1 KWrite编辑器

KDE环境的基本编辑器是KWrite。它提供了简单的文字处理类型的文本编辑功能,还支持代码语法高亮显示和编辑。是一款图形化软件。类似于Windows上的sublime、ultraedit等编辑软件。

10.4.2 Kate编辑器

Kate编辑器是KDE项目的旗舰编辑器。它采用和KWrite同样的文本编辑器,所以两者大部分功能相同,但却又融合了大量其他的特性。

10.5 GNOME编辑器

10.5.1 启动gedit

大多数GNOME桌面环境都将gedit放在Accessories面板菜单条目中。当然,也可以通过命令 getdit mygrop.c 打开。

10.5.2 基本的gedit功能

gedit采用菜单栏和工具栏来设置功能和配置设置。

10.5.3 设定编好设置

菜单路径:Edit -> Preferances
可用进行编辑器各种偏好设置

10.6 小结

在创建shell脚本时,你需要某种类型的文本编辑器。这里介绍常用的编辑器vim、nano、emacs等,还介绍了一些图形化编辑工具。本章介绍了vim、nano、emacs命令。

本章学习命令个人总结如下

vim:使用vim编辑器进行文件编辑
nano:使用nano编辑器进行文件编辑
emacs:使用emacs编辑器进行文件编辑

妙手空空
1.3k 声望370 粉丝

博观而约取,厚积而薄发