11、Linux基础--sort、uniq、cut、tr、wc、流处理工具sed
笔记
1、晨考
1、写出过滤手机号的正则表达式
1[0-9]{10}
2、写出过滤邮箱的正则表达式
chenyang@123.com
[a-zA-Z0-9-_]+@[a-z0-9]+\.(com|cn|com\.cn|net)
3、过滤密码,要求必须要大写字母、小写字母、数字以及下划线,长度在 8 到 16 之间
([A-Z]+[a-z]+[0-9]+_+){8,16}
4、过滤本地的IP
ip a | grep -E '([(1[0-9]{2}){3}(2[0-4][0-9]){3}(25[0-4]){3}[0-9]{1,2}]\.){3}[(1[0-9]{2}){3}(2[0-4][0-9]){3}(25[0-4]){3}[0-9]{1,2}]'
([0-9]{1,3}\.){3}[0-9]{1,3}
2、昨日问题
3、今日内容
1、文本处理命令
2、linux三剑客之sed
2.1、定位
4、文本处理命令
1、sort命令
用于将文件内容加以排序
-n # 依照数值的大小排序
-r # 以相反的顺序来排序
-k # 以某列进行排序
-t # 指定分割符,默认是以空格为分隔符
cat 3.txt | sort -n -r -k3 -t '|'
2、uniq 命令
用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用
-c # 在每列旁边显示该行重复出现的次数。
-d # 仅显示重复出现的行列。
-u # 仅显示出一次的行列
3、cut 命令
cut命令用来显示行中的指定部分,删除文件中指定字段
-d # 指定字段的分隔符,默认的字段分隔符为"TAB";
-f # 显示指定字段的内容;
4、tr命令
替换或删除命令
-d # 删除字符
5、wc命令
统计,计算数字
-c # 统计文件的Bytes数;
-l # 统计文件的行数;
-w # 统计文件中单词的个数,默认以空白字符做为分隔符
注:在Linux系统中,一段连续的数字或字母组合为一个词。
5、linux三剑客之sed
sed是linux中,流媒体编辑器、流处理工具。
grep : 过滤文本
sed : 修改文本
awk : 处理文本
sed与awk的区别:
参考:https://www.zhihu.com/question/297858714
1、sed的格式
sed [参数] '处理规则' [操作对象]
2、参数
-e : 允许多项编辑
-n : 取消默认输出
-i : 就地编辑
-r : 支持拓展正则
-f : 指定sed匹配规则脚本文件
3、定位
1、数字定位法
指定行号。
sed '3d' 4.txt
sed '2,3d' 4.txt
2、正则定位法
指定正则定位。
sed '/^g/d' 2.txt
3、数字和正则定位法
sed '3,/^g/d' 2.txt
4、正则正则定位法
sed '/^g/,/^j/d' 2.txt
4、sed的编辑模式:
d :删除
p :打印
a : 在当前行后添加一行或多行
sed '2axxx' 4.txt
c :用新文本修改(替换)当前行
sed '2cxxx' 4.txt
i : 在当前行之前,插入文本(单独使用时)
sed '2ixxx' 4.txt
r : 在文件中读内容
sed '2r r.txt' 2.txt
w : 将指定行写入文件
sed '2w w.txt' 2.txt
y : 将字符转换成另一个字符
sed '2y/fa/FA/' 2.txt
s : 将字符串转换成另一个字符串(每一行只替换一次)
sed 's/11/22/' 6.txt
g : 全部执行
sed 's/11/22/g' 6.txt
i : 忽略大小写(跟 s 模式一起使用时)
& :代表前面匹配到的内容
6、案例
1、将nginx.conf中的注释行全部去掉
[root@localhost ~]# sed '/^ *#/d' /etc/nginx/nginx.conf
2、将nginx.conf中每一行之前增加注释
[root@localhost ~]# sed 's/.*/# &/g' /etc/nginx/nginx.conf
3、要求一键修改本机的ip,
192.168.15.100 ---> 192.168.15.101
172.16.1.100 ---> 172.16.1.101
sed -i 's#.100#.101#g' /etc/sysconfig/network-scripts/ifcfg-eth[01]
4、将/etc/passwd中的root修改成ROOT
sed -i 's#root#ROOT#g' /etc/passwd
11、Linux基础--sort、uniq、cut、tr、wc、流处理工具sed的更多相关文章
- 文本处理命令(sort+uniq+cut+tr+wc)+三剑客之sed
目录 文本处理命令+三剑客之sed 一.文本处理命令 1.排序命令 sort 2.检查/删除命令 uniq 3. cut 显示特定部分命令 4. 替换或删除命令 tr 5.统计 计算数字命令 wc 二 ...
- Linux之 sort,uniq,cut,wc命令详解
sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...
- linux 基础2-null,cut,wc,head,tail
一. 特殊文件: /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty.其中/dev/null将会丢掉所有写入它的数据 ...
- 【转帖】linux sort,uniq,cut,wc,tr,xargs命令详解
linux sort,uniq,cut,wc,tr,xargs命令详解 http://embeddedlinux.org.cn/emb-linux/entry-level/201607/21-5550 ...
- linux sort,uniq,cut,wc命令详解
linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...
- (转)linux sort,uniq,cut,wc命令详解
linux sort,uniq,cut,wc命令详解 sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些 ...
- linux sort,uniq,cut,wc,tr命令详解
sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...
- [转]linux sort,uniq,cut,wc命令详解
sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...
- linux sort,uniq,cut,wc命令详解 (转)
sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...
随机推荐
- Autosys 快速参考
Autosys Quick Reference Introduction to Autosys: AutoSys is an automated job control system for sche ...
- @RestController和@Controller的关系
@RestController注解,相当于@Controller+@ResponseBody两个注解的结合
- 快速搭建Hadoop-Hive-Zoopkeeper-Sqoop环境进入Sqoop学习环境
原文链接: https://www.toutiao.com/i6771763211927552523/ CDH简单了解 CDH: C:cloudera(公司) D:distribute H:Hadoo ...
- iview获取全选和半选数据(方法一:基于树型数据)
在用iview的时候发现iview的树中获取半选和全选的函数getCheckedAndIndeterminateNodes在我使用的iview版本里面是没有提供的, 于是自己写了一下获取全选和半选节点 ...
- 我的2021年度总结-回忆录|附旅行Vlog
今天是农历腊月初十,还有20天就是2022年了.这一年,些许遗憾,些许期盼.时间久了,很多事已经慢慢模糊了,只记得,这最后几个月的闲碎小事. 不止多久,很久没有码字了.有些事,记不清,忆不得.时至今年 ...
- Cesium参考资源
Reference resources cesium官网 cesium 下载 cesium官方文档 APIs cesium-workshop github cesium 官方示例 cesium git ...
- 5种高大上的yml文件读取方式,你知道吗?
原创:微信公众号 码农参上,欢迎分享,转载请保留出处. 在上一篇文章中,我们从源码角度分析了SpringBoot解析yml配置文件的全流程,那么我们今天就来点实战,总结一下除了烂大街的@Value和@ ...
- Github基于Web的编辑器
在 GitHub 存储库中使用基于 Web 的编辑器来创建和提交代码更改. 关于 GitHub 基于 Web 的编辑器 基于 Web 的编辑器引入了全新的轻量级编辑体验,可完全在您的浏览器中运行.使用 ...
- ansible roles实践——安装nginx
1.创建roles 在/etc/ansible/roles目录下 1.1 手动创建需要的目录 1.2 使用命令创建,用不到的目录可以创建为空目录,但不可以不创建. 创建目录[root@master] ...
- 使用ansible 批量分发ssh密钥
先看执行结果 看看ssh.yml怎么写的 看看hosts文件中backup组怎么写的