如何使用shell提取多个文本中相同的内容

如何使用shell提取多个文本中相同的内容,第1张

问题太笼统,只能有个大致思路,按如下步骤:

使用类似下面的语句将所有文件整合为一个,排序去重后统计出一个最全数字合集。

cat file1 file2 file3  | sort | uniq >dataset

分别统计合集中的所有数字在各文件中出现的次数

for file in file1 file2 file3 

do

    # 分别统计dataset中每个数字在各个文件中出现的次数

    # 结果以“数字 次数1 次数2 次数3 ”的形式存入一个文件statistic

done

使用awk分析statistic文件,提取所有次数均>0的数字。

awk 'BEGIN{flag=1}{for(i=2;i<=NF;i++){if($i==0) flag=0} if(flag==1) print $1}' statistic >result

最后删除中间文件dataset和statistic,只保留最终结果文件result

要具体咨询建议加我百度hi交流或直接追问。

我觉得你这个思路不好,按照你的想法,每增加一条,就需要运行一个往xxxx服务器上发送一次的sh,如果Alog同时写入100,200,300,1000条你想过是什么概念吗?除了浪费了系统资源,还占用了连接带宽。所以实时更新我觉得这个思路不好。我建议按天比如24小时,上传一次alog。了解下咯!

#!/bin/sh

for i in `cat abctxt`

do

copy -f /old/$i /new &> /dev/null

done

awk '

{

    if(a==1)

    {

        print >> "atxt"

        a=2

    }

    else if(a==2)

    {

        print >> "btxt"

        a=1

    }

}

/求大神指点/{ a=1 }'  "路径/桌面/abc/123txt"

以上就是关于如何使用shell提取多个文本中相同的内容全部的内容,包括:如何使用shell提取多个文本中相同的内容、shell获取文件内容,写入另一监控文件、如何用shell脚本读取文件的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9433199.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存