Linux之sed 与awk网站构架


23g354shjth
芒果碎冰冰 2022-09-27 09:37:00 50433
分类专栏: 资讯

sed的介绍

什么是sed?

Sed是一个流处理编辑器, 它能帮助我们自动处理文件、分析日志文件.修改配置文件等。

Stream Editor文本流编辑,sed是一一个“非交互式的"面向字符流的编辑器。能同时处理多个文件

多行的内容

例如:

可以不对原文件改动,把整个文件输出到屏幕

可以把匹配到的内容输出到屏幕上

还可以对原文件改动,但是不会再屏幕上返回结果

sed处理流程

 sed指令

sed [-hnV][-e<script>][-f<script文件>][文本文件]

-e<script>或--expression= <script>以选项中指定的script来处理输入的

文本文件。

-f<script文件> 或--file= <script文件>以选项中指定的script文件来处理

输入的文本文件。

-h或--help显示帮助。

-n或--quiet或--silent仅显示script处理后的结果。

-V或--version显示版本信息。

sed动作

a :新增,a的后面可以接字串,新增字符串会在目前的下一行

C :取代,C的后面可以接字串,这些字串可以取代n1,n2之间的行

d :删除,因为是删除,所以d通常写在最后.

i :插入,i的后面可以接字串,新增字串会在目前的上-行

p :打印,将某个选择的数据显示出。通常p会与参数sed -n -起运行

s :替换,可以直接进行替换。通常这个s的动作可以搭配正则表示。例如1,20s/old/new/g (是不是

和vim的替换很像? )

sed的使用

例如:在文件中查找包含2222的行

cat sed.test | sed -n '/2222/p'

 在文件中添加第三行,内容为hello

sed -e '2a hello world' sed.test

 删除行,删除2到3行

cat -n sed.test | sed -e '2,3d'(注意这里表示永久删除,只是暂时的)

删除包含2222的行

cat sed.test | sed '/2222/d'

   替换行

将1-2行替换为hahaha

 查找并替换字符串

将示例文本的中Hello换成Haha

sed 's\Hello\Haha\g' sed.test

前面的一系列操作,只是在屏幕上按要求输出了内容,而文件本身并没有改变

sed也可以用于文件自身的修改。但这样操作非常危险,有可能误操作将文件改坏,所以我们要

有充足把握的情况下才能这样使用结合-i和查找替换即可修改文件,. 上例中加-i即可

awk的介绍

什么是awk?

awk是一种编程语言,用于在linux/unix 下对文本和数据进行处理。它支持用户自定义函数和动态

正则表达式等功能,是linux/unix 下的一个强大编程工具。awk命名来自于三位创始人Alfred Aho,

Peter Weinberger,和BrianKernighan的Family Name的首字符。

awk的处理方式

awk-次处理一行内容awk对每行可以切片处理,空格和制表符为默认分隔符将每行切片,切开的部分

再进行各种分析处理

awk的使用

命令行格式:

awk [选项参数] 'script' var=value file(s)

例如:

分割,显示/etc/passwd的第一 列,即用户名列

cat /etc/passwd | awk -F : '{print $1}'

 匹配某段字符

cat /etc/passwd| awk -F :'$1 /oo/'

显示/etc/passwd的前五行,显示每行的行号、列数,以及该行完整的内

head -n5 /etc/passwd| awk -F : '{ print NR" " NF”" $0 }'

 条件操作匹配

cat /etc/passwd | awk -F : '$3=="0"'

累加前四行用户的uid

head -n4 /etc/passwd | awk -F : '{(sum= sum+ $3);END{print sum)'

流程控制类

输出第一-个字段的第一一个字符大于q的行

cat /etc/passwd | awk -F "'{if ($1 > "q") { print $1 } else { print-”}'

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=10489
赞同 0
评论 0 条
芒果碎冰冰L0
粉丝 0 发表 8 + 关注 私信
上周热门
如何使用 StarRocks 管理和优化数据湖中的数据?  2944
【软件正版化】软件正版化工作要点  2863
统信UOS试玩黑神话:悟空  2823
信刻光盘安全隔离与信息交换系统  2718
镜舟科技与中启乘数科技达成战略合作,共筑数据服务新生态  1251
grub引导程序无法找到指定设备和分区  1217
华为全联接大会2024丨软通动力分论坛精彩议程抢先看!  163
点击报名 | 京东2025校招进校行程预告  162
2024海洋能源产业融合发展论坛暨博览会同期活动-海洋能源与数字化智能化论坛成功举办  160
华为纯血鸿蒙正式版9月底见!但Mate 70的内情还得接着挖...  157
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

加入交流群

请使用微信扫一扫!