linux 中实现按照行压缩连续的重复

 

001、

复制代码
(base) [b20223040323@admin1 test2]$ ls
a.txt
(base) [b20223040323@admin1 test2]$ cat a.txt    ## 测试数据
er kj ab ab ab jk ab ab uy
dd xy xy xy xy xy mn mn mn
ue 87 87 87 _k _k jh rt rt
(base) [b20223040323@admin1 test2]$ awk '{temp=$1; printf("%s ", $1); for(i = 1; i <= NF; i++) {if($i == temp){printf("")} else {printf("%s ", $i); temp=$i}}{printf("\n")}}' a.txt
er kj ab jk ab uy                    ## 按照行压缩连续的重复
dd xy mn
ue 87 _k jh rt
(base) [b20223040323@admin1 test2]$ awk '{temp=$1; printf("%s ", $1); for(i = 1; i <= NF; i++) {if($i == temp){printf("")} else {printf("%s ", $i); temp=$i}}{printf("\n")}}' a.txt | cat -A
er kj ab jk ab uy $                 ## 末尾多出一个空格
dd xy mn $
ue 87 _k jh rt $
(base) [b20223040323@admin1 test2]$ awk '{temp=$1; printf("%s ", $1); for(i = 1; i <= NF; i++) {if($i == temp){printf("")} else {printf("%s ", $i); temp=$i}}{printf("\n")}}' a.txt | sed 's/.$//' | cat -A
er kj ab jk ab uy$                   ## 删除末尾的空格
dd xy mn$
ue 87 _k jh rt$
复制代码

 

posted @   小鲨鱼2018  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2021-04-21 linux shell脚本中流程控制语句 if 、for、while、case
2021-04-21 linux系统中条件测试语句
2021-04-21 linux系统 shell脚本 接收用户的参数
2021-04-21 linux 系统中read命令
2021-04-21 linux系统中 while read逐行读取数据
2021-04-21 linux系统中统计文本中单词出现的次数
点击右上角即可分享
微信分享提示