Debian11 文本工具

Debian11 文本工具,Debian11教程,介绍文本编辑和文本工具等。

【全栈教程】:https://try8.cn/article
教程目录:
教程内容:
最近更新:2023-04-17

一、Debian11 文本工具 介绍

在使用 Debian11 系统过程中, 存在各种类似 Vim 或 Emacs 的文本编辑工具,主要用于类 Unix 操作系统的文本工具,您应该精通其中的一个。Debian 官方推荐使用 Vim 作为文本工具,当然这也是很多 Linux 系统的默认文本工具。


1.1、Debian11 安装文本编辑器工具

我们在本教程选择 Vim 作为默认的文本编辑器,在 Debian11 中安装 Vim 非常简单。

apt update          #更新软件包索引信息
apt install vim     #安装 Vim
vim /data/try8.log  #打开文件


1.2、Debian11 设置默认文本工具

如同 Windows 可以设置默认应用一样,Debian11 系统也可以设置默认的文本编辑器。对于初学者,可以使用 "/usr/bin/vim.basic" 代替 "/usr/bin/vim.tiny",因为它支持格式高亮,易于阅读。

update-alternatives --config editor  #选择默认的文本编辑器


1.3、Vim 文本编辑器的工作模式

Vim 文本编辑器有五种常用的工作模式,分别为:普通模式、插入模式、替换模式、可视模式和命令模式。

  • 普通模式:进入后的默认模式,只能执行指令不能进行输入操作;
  • 插入模式:进行文本输入, 和普通的文本编辑器一样;
  • 替换模式:进行字符替换,用于替换光标处的字符;
  • 可视模式:进行文本查看选择;
  • 命令模式:用于在底部最后输入命令,按回车执行。


Vim 五种工作模式的切换方式如下:

  • 普通模式 -> 插入模式:按 i 键,可以理解为 "insert";
  • 普通模式 -> 替换模式:按 r 键,可以理解为 "replace";
  • 普通模式 -> 可视模式:按 v 键,可以理解为 "visual";
  • 普通模式 -> 命令模式:按 : 键,输入命令后按回车执行;
  • 其它模式 -> 普通模式:按 esc 键。


二、Debian11 文本工具

Debian11 系统有很多文本工具命令,每一个文本工具命令后面都有一个核心链接库或文本工具在支撑,以下分别为不使用正则的文本工具、使用基础正则和扩展正则的文本工具。这些文本工具并非全部都要熟练,您可以根据自己的需求选用。


2.1、非正则的文本工具

cat   #连接文件并输出全部的内容
tac   #连接文件并反向输出内容
cut   #选择行的一部分并输出内容
head  #输出文件的开头内容
tail  #输出文件的末尾内容
sort  #对文本文件的行进行排序
uniq  #从已排序的文件中移除相同的行
tr    #转换或删除字符
diff  #对文件的行进行对比


2.2、基础正则的文本工具-BRE

ed     #原始行编辑器
sed    #流编辑器
grep   #匹配满足条件的文本
vim    #屏幕编辑器
emacs  #屏幕编辑器


2.3、扩展正则的文本工具-ERE

awk       #进行简单的文本处理
egrep     #匹配满足多个条件的文本
tcl       #可以进行任何你想得到的文本处理
perl      #可以进行任何你想得到的文本处理
pcregrep  #软件包中可以匹配 Perl 兼容 PCRE 的文本


三、Debian11 正则表达式

Debian11 正则表达式描述要匹配的模式,主要由 文本字符 元字符 构成的。元字符是带有特殊含义的字符。它有两种主要的形式,分别是 BRE 和 ERE ,使用哪种取决于上述的文本工具。


3.1、BRE 和 ERE 的区别

BRE 和 ERE 两种形式主要体现在元字符上的区别。

#通用的元字符
    BRE:\ . [ ] ^ $ *
    ERE:\ . [ ] ^ $ *
#BRE 独有的 \ 转义元字符
    BRE:\+ \? \( \) \{ \} \|
    ERE:
#ERE 独有的不需要 \ 转义的元字符
    BRE:
    ERE:+ ? ( ) { } |
#匹配非元字符 c 
    BRE:c
    ERE:c
#匹配一个字面意义上的字符 c,即使 c 本身是元字符
    BRE:\c
    ERE:\c
#匹配任意字符,包括换行符
    BRE:.
    ERE:.
#字符串的开始位置
    BRE:^
    ERE:^
#字符串的结束位置
    BRE:$
    ERE:$
#单词的开始位置
    BRE:\<
    ERE:\<
#单词的结束位置
    BRE:\>
    ERE:\>
#匹配在 abc... 中的任意字符
    BRE:[abc…]
    ERE:[abc…]
#匹配除了 abc... 中的任意字符
    BRE:[^abc…]
    ERE:[^abc…]
#匹配零个或多个 r
    BRE:r*
    ERE:r*
#匹配一个或多个 r
    BRE:r\+
    ERE:r+
#匹配零个或一个 r
    BRE:r\?
    ERE:r?
#匹配一个 r1 或 r2
    BRE:r1\|r2
    ERE:r1|r2
#匹配一个 r1 或 r2,并作为括号内的正则表达式
    BRE:\(r1\|r2\)
    ERE:(r1|r2)


3.2、正则表达式 在线示例

在线示例使用 Vim, 首先打开任意文件,如:vim /data/try8.log,默认进入普通模式,输入如下命令操作:

#搜索相关示例
    /try8  #使用/向下搜索try8字符串
    ?try8  #使用?向上搜索try8字符串
    /\d\d:\d\d:\d\d  #使用/向下搜索如12:00:00格式的时间字符串
    ?\d\d:\d\d:\d\d  #使用?向上搜索如12:00:00格式的时间字符串
#替换相关示例
    :s/from/to #使用s进行替换操作,将当前行匹配到的第一个from字符串替换成to字符串
    :%s/from/to #使用%进行替换操作,将所有行匹配到的第一个from字符串替换成to字符串
    :%s/from/to/g #使用g进行替换操作,将所有行匹配到的全部from字符串替换成to字符串
    :%s/from/to/gce #使用gce进行替换操作,加c为替换前请用户确认,加e忽略执行错误
#删除相关示例
    :g/try8/d  #删除包含try8字符串的行
    :g!/try8/d  #删除不包含try8字符串的行
    :n,.d  #从n行开始删除到当前行
    :.,nd  #从当前行开始删除到n行
    :g/^\s*$/d  #删除只有空白的行


四、Debian11 文本工具 总结

Debian11教程 - Debian11 文本工具,主要引导用户快速理解Debian11 环境下如何进行文本编辑处理,从文本工具介绍开始,逐步到工作模式、正则表达式的使用等,通篇实用易懂,让入门变得更加快速和简单。


《Debian11教程》主打原创、全部免费,欢迎学习和转载,如需交流请加微信号:try8_cn。