文本处理工具(231004)

文本处理工具(231004)本文用于记录自己的学习过程 字符处理工具

大家好,欢迎来到IT知识分享网。

目录

1.grep [Globally search a Regular Expression and Print]

1.1 grep 格式

1.2 grep字符数量匹配规则

练习脚本:

2.sed

2.1 对字符的处理

3.awk


1.grep [Globally search a Regular Expression and Print]

grep
grep

E
=
egrep

1.1 grep 格式

grep
匹配条件 处理文件
grep root passwd                           过滤root关键字
grep

i
root passwd                        后略大小写
grep

E “
\<
root” passwd                 root字符之前不能有字符
grep

E “root
\>
” passwd                 root字符之后不能有字符
grep

数字                                      显示过滤行以及上面几行和下面几行
grep

n                                           显示匹配的行所在行号
grep

A                                           显示过滤行以及下面几行
grep

B                                           显示过滤行以及上面几行
grep

v                                            反向过滤
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)

1.2 grep字符数量匹配规则

^
westos                                         以westos开有
westos$                                         以westos结尾
w….s                                              w开头s结尾中间4个任意字符
…..s                                               s结尾前面5个任意字符
*
                                                   字符出现任意
?                                                   0到1次
+
                                                  1次到任意次
{n}                                                 n次
{m,n}                                             m到n次
{

0
,n}                                              
0

n
{,n}                                                
0

n
{m,}                                               最少m次
(lee){

2
}                                          lee字符串出现2次

文本处理工具(231004) 

文本处理工具(231004)

文本处理工具(231004)

文本处理工具(231004)

文本处理工具(231004)

文本处理工具(231004)

练习脚本

请显示系统中能被
su
命令切换的用户名称
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)

2.sed

命令格式
sed
参数 命令 处理对象
sed
参数 处理对象

f
处理规则文件
文本处理工具(231004)

2.1 对字符的处理

文本处理工具(231004)

文本处理工具(231004)

文本处理工具(231004)

文本处理工具(231004)

p                                                           显示
sed

n 5p westos                                 显示第五行
sed

n
3
,5p westos                              显示3到5
sed

ne “3p;5p westos                         显示3和
5
sed

ne
1
,5p westos                            
1

5
sed

ne
‘5,$p’  
westos                        5到最后以行
sed

n
‘/^#/p’
fstab                             显示以#开头的行
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
d                                                        删除
sed 5d westos                                   删除第五行
sed
‘/^#/d’  
fstab                                把#开头的行删除
sed
‘/^UUID/!d’
fstab                          除了UUID以外的行都删除
sed

e ‘5,$d’
westos                           从第五行开始删除到最后
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
a                                                        添加
sed -e ‘5ahello’  sed                               5行后添加
sed

e ‘$a hello world’
fstab                最后一行加
sed

e ‘$a hello\nworld’
fstab                分行添加
sed

e ‘/^#/a hello world’
fstab                给#行后添加
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
c                                                           替换
sed

e ‘/^#/c hello world’
fstab                #行替换
sed
‘5chello world’
westos                        第五行替换
文本处理工具(231004)
文本处理工具(231004)
w                                                         把符合的行写到指定文件中
sed
‘/^UUID/w westofile’
westos         把
westos

UUID
开头的行写入
westosfile
文本处理工具(231004)
文本处理工具(231004)
i
                                                           插入
sed
‘5ihello westos’
westos                
文本处理工具(231004)
r                                                 整合文件
sed
‘5r haha’
westos                     将haha文件整合westos文件的5行后
文本处理工具(231004)
sed
字符替换
sed
‘s/://g’
westos                        把:换成   全局替换
sed
‘s/://’
westos                                把每行的第一个:换成
sed
‘1,5s/://g’
westos                        替换1到5行
sed
‘1s/://g’
westos                                替换1行
sed
‘1s/://g;5s/://g’
westos                替换1行和5行
sed
‘/lp/,/shutdown/s/://g’
westos                将lp行到shutdown行的:替换
sed
‘s/\///g’
westos                                将/替换为  ,/要用/\表示避免反复转义
sed
‘s@/@@g’
westos                        与上一条作用相同,用@作为定界符
sed
‘s@/@@g’

i
westos         把sed处理的内容保存到
westos
文件中
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
文本处理工具(231004)
练习及脚本
Apache_port.sh
此脚本接入数字
http
的端口就改为此数字
假设
selinux
为关闭状态
例如
sh Apache_port.sh
ERROR
:
Pleaase input port number following script
!!
sh Apache_port.sh
8080
apache
的端口会被修改为
8080
文本处理工具(231004)
文本处理工具(231004)

3.awk

awk

F
分隔符
BEGIN{}{}END{} FILENAME
NR                 #行数
NF                         #列数
FILENAME                 #文件名称本身
westos                 #westos变量值
“westos”                         #westos字符串
/
bash$
/
#
条件
/
条件
1
|
条件
2
/
#
条件
1
或者条件
2
/
条件
1
/||/
条件
2
/
#
条件
1
或者条件
2
/
条件
1
/&&/
条件
2
/
#
条件
1
并且条件
2
$
0
        #所有的列
$
1
        #第一列
$
2
        #第二列
$
3
        #第三列
#
/
etc
/
passwd
文件的第六列没有
home
关键字并且以
bash
结尾的行
awk

F
:
‘$6!~/home/&&/bash$/{print}’
/
etc
/
passwd
文本处理工具(231004)
文本处理工具(231004)
课后练习
统计在系统中能
su
切换的并且用户加目录不在
/
home
下的用户数量

文本处理工具(231004)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/124979.html

(0)
上一篇 2025-10-01 18:33
下一篇 2025-10-01 18:45

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信