shell脚本:删除文本中的字母、找单词、筛选,匹配,删除,替换
shell 有时候会用三剑客结合正则表达式来处理文本 sed cut行 awk列,对一行中的英文,数字筛选,匹配,删除,替换,
文章目录
- 删除文本中指定行的字母
- 输出一句英文中长度小于6的单词
- 根据规律计算数字
删除文本中指定行的字母
需求:
1.将文本test.txt(共10行)中前5行中包含字母的行删除
2.将6-10行中的字母删除
脚本思路:
过滤出前5行,将包含字母的行删除,输出满足需求1的结果,去掉前5行,将剩余的行中(6-10行)的字母去掉,输出满足需求2的结果
#!/bin/bash
#过滤前5行,删除包含字母的行
sed -n '1,5'p test.txt |sed '/[a-zA-Z]/d'
#删除前5行,将剩余行(6-10行)中的字母去掉
sed '1,5'd test.txt |sed 's/[a-zA-Z]//g'
输出一句英文中长度小于6的单词
示例:
include all files from the config-test directory.
#!/bin/bash
n="include all files from the config-test directory."
#计算分隔后的段数
s=`echo $n|awk -F '[ +-.]' '{print NF}'`
#循环计算前8段的长度
for ((i=1;i<$s;i++))
dol=`echo $n|awk -F '[ +-.]' -v j=$i '{print $j}'|wc -L`#输出每段长度小于6的单词if [ $l -lt 6 ]thenecho $n|awk -F '[ +-.]' -v j=$i '{print $j}'fi
done
[root@linux shell]# sh test.sh
all
files
from
the
test
根据规律计算数字
需求:
有一组数字:10、31、53、77、105、141,找到规律使用shell脚本输出后面10个数字
前一位数与后一位数的差值:
31-10=21
53-31=22
77-53=24
105-77=28
141-105=36
用x表示数字:10、31、53、77、105、141
用y表示x的差值:21、22、24、28、36
用z表示y的差值:1、2、4、8
#!/bin/bash
x=10
y=21
for i in `seq 0 15`
doecho $xx=$[$x+$y]z=$[2**$i]y=$[$y+$z]
done
[root@linux shell]# sh test.sh
10
31
53
77
105
141
193
277
425
701
1233
2277
4345
8461
16673
33077
shell脚本:删除文本中的字母、找单词、筛选,匹配,删除,替换相关推荐
- shell脚本修改文本中匹配行之前的行的方法
原创文件,欢迎阅读,禁止转载. 例子中是把 finish 前一行的 "yes" 改成 "YES" 有一个方法就是利用sed+awk一起来完成. zjk@zjk: ...
- shell 删除文本中的重复行(sort+uniq/awk/sed) (方法=效率啊)
From: http://churuimin425.blog.163.com/blog/static/341298772012230112956712/ 删除文本中的重复行(sort+uniq/awk ...
- mysql shell可视化_shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中...
shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...
- shell 批量提取文本中字符
shell 批量提取文本中字符 利用awk提取文本中的字符串,亲测有效 1.创建txt文件的方法 (1)利用vim编辑 vi系列编辑器有两种分别是vi 和vim ,建议使用vim ,vim编辑器更方便 ...
- 【java】统计英文文本中某些字母出现的次数
如何统计英文文本中某些字母出现的次数 public class Java_3 {public static void main(String[] args) {String text = " ...
- 删除文本中重复的单词
在这#encoding=gbk 声明字符类型为gbk,声明前后不能有空格,否则会出错 '''删除文本中重复的单词''' with open('真题词汇--英语一.txt','r') as file:f ...
- C语言中删除字符串中一个字母,C程序删除字符串中除字母之外的所有字符
C程序删除字符串中除字母之外的所有字符 在此示例中,您将学习从用户输入的字符串中删除除字母之外的所有字符. 要理解此示例,您应该了解以下C语言编程主题: 删除字符串中除字母之外的字符#include ...
- 编写程序统计从键盘输入的一行文本中各个字母的个数。 输入以回车键结束。 不区分大小写,大写字母与相应的小写字母按照同一个字母看待。 要求输出按照各个字母出现的个数从大到小进行排序,出现的个数相同的,按
编写程序统计从键盘输入的一行文本中各个字母的个数. 输入以回车键结束. 不区分大小写,大写字母与相应的小写字母按照同一个字母看待. 要求输出按照各个字母出现的个数从大到小进行排序,出现的个数相同的,按 ...
- 【JAVA】文本处理(1)—删除文本中的空白行
一.前言 本次学习应用于文本处理方面,主要的功能是为了实现删除文本中的空白行,便于我们阅读和储存. java.io包为我们提供了相关的API,实现了对所有外部系统的输入输出操作,这就是我们这章所要学习 ...
最新文章
- 核苷酸pi值计算方法
- Linux基础篇之文本、数据流处理命令(sed uniq grep awk wc)
- linux中用户识别码,C语言中设置用户识别码的相关函数的简单讲解
- (王道408考研操作系统)第三章内存管理-第一节1:内存基础知识、程序编译运行原理
- ASP.Net新手项目经验谈
- Linux系统如何创建和挂载XFS文件系统
- (翻译)《介绍 GENEVA Beta 1 白皮书》(3)
- 微信小程序蓝牙ibeacon_微信小程序的新接口 – 蓝牙
- Jmeter数据库连接(MYSQL)
- 台式计算机操作系统的安装,Win10X电脑操作系统可以装在台式机吗?
- 计算机网络应用最简单的,计算机网络的基础知识和简单应用.ppt
- java 百家姓_java判断姓是否合格 百家姓
- oracle中取月初,月末,季初,季末及年初,年末时间
- OSChina 周三乱弹 —— 啪啪啪是敲键盘的声音
- 开始菜单找不到anaconda,如何做?
- 如何使用phpunit运行单一测试方法?
- python3打开文件的代码_Python读写文件的代码示例
- 基于python的随机森林回归实现_从零实现回归随机森林
- 如何在editplus中配置ctags?
- EventLoop 事件循环
热门文章
- 【线上直播】微生物组学数据分析与挖掘专题会议
- java小组坦克大战游戏开发文档开发日志_java实现坦克大战游戏
- ios获取磁力计信息
- Android Audio 2: Audio相关术语
- python 小程序
- catkin_make编译时fatal error: ###_msgs/***.h: 没有那个文件或目录
- 自己留着用的 .net 图片水印 方法
- 网络推广50种方法必看
- 【键盘开箱】B.FRIENDit壁虎忍者RF1430K 2.4G无线键盘,满足办公室安静需求的无线键盘!
- 圆圈中最后剩下的数字(简单)