栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Shell文本处理工具

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Shell文本处理工具

文章目录
    • 一、grep
      • 1、grep与egrep的关系
      • 2、实验内容
        • (1)、实验素材准备
        • (2)、实验步骤
    • 二、sed
    • 三、awk
      • 1、用法
      • 2、实验内容

一、grep 1、grep与egrep的关系

grep -E = egrep
grep支持基本正则表达式
egrep对于基础和扩展的正则表达式都支持

2、实验内容 (1)、实验素材准备

(2)、实验步骤

grep (参数) xxx 文件名

grep参数意义
关键字查询带有关键字的行
-E xx/xxx筛选含有这两种关键字之一的内容
-e xx -e xxx与上一条等价
-i
-n
-








二、sed

命令格式: sed 参数 命令 处理对象 或是 sed 参数 处理对象 -f 处理规则文件

对字符的处理

p	显示

sed -n 5p filename##显示第五行
sed -n 3,5p filename##显示3到5行
sed -ne "3p;5p filename##显示3和5行
sed -ne 1,5p filename##显示1-5行
sed -ne '5,$p' filename##显示5到最后以行
sed -n '/^#/p' fstab ##显示以#开头的行

显示第五行
显示1和5行
显示1到5行
第5行到最后
显示以test开头的行

d	删除

sed 5d filename##删除第五行
sed '/^#/d' filename##把#开头的行删除
sed '/^UUID/!d' fstab##除了UUID以外的行都删除
sed -e '5,$d' filename

删除以test开头的行


删除三行及三行以后的内容

a	添加

sed -e '$a hello world' filename
sed -e '$a hellonworld' filename
sed -e '/^#/a hello world' filename

c	替换

sed -e '/^#/c hello world' fstab
sed '5chello world' westos

w	把符合的行写到指定文件中
sed '/^UUID/w westofile' westos ##把westos中UUID开头的行写入westosfile中
i	插入
sed '5ihello westos' filename ##将hello westos插入到file的第一行
r	整合文件
sed '5r haha' westos ##

三、awk 1、用法

awk -F 分割符 BEGIN {} {} END {} FILENAME

参数意义
NR行数
NF列数
FILENAME文件名称本身
XXXXX变量名
“XXXXX”字符串
bash$条件
/条件1/条件2/条件1或者条件2
/条件1/
/条件1/&&条件2/条件1并且条件2
参数意义
$0所有的列
$1第一列
$2第二列
2、实验内容

在passwd中,以:为分割符,以root为开始打印每一行的第一列并以end结束整个打印

在passwd中,打印行数

在passwd中,打印列数

打印出数据的来源文件名

以westos为变量名,每次循环加一,直至结束后输出行数

输出以nologin结尾的行的第1,3列

同上,但当要求的列数超过本身的列数时,会只显示存在的那一列。

条件中两个元素的或关系

两个条件的或关系

两个条件的并关系

第七列以bash结尾的内容和它的反命题

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/599656.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号