免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7110 | 回复: 8
打印 上一主题 下一主题

[文本处理] 文本查找处理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2024-03-14 13:18 |只看该作者 |倒序浏览
1.zip (64.55 KB, 下载次数: 3)

打印出文件二中的文件类型和Content-Type要和文件一中文件类型和Content-Type保持一致的行,如果满足输出一个文件,如果不满足要输出到别外一个文件。
即,如下文件二中第二行其文件类型为jpg,Content-Type为application/xml,是不可能会在文件一中出现的,输出到另一个文件b.txt,文件二中第一行为jpeg,Content-Type为image/jpeg和文件一是保持一致的,输出到另一个文件a.txt

文件一如下
  1. jpeg image/jpeg
  2. xm audio/xm
  3. xml application/xml
复制代码


文件二如下
  1. serveDiary/1651494058365042688/1/83425131410700.jpeg  Content-Type: image/jpeg
  2. swgkFile/1788413694801186817/1/23303350691956.jpg  Content-Type: application/xml
复制代码

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
2 [报告]
发表于 2024-03-27 09:55 |只看该作者
  1. FileIn1="1.txt"
  2. FileIn2="2.txt"
  3. FileOut1="Found.txt"
  4. FileOut2="NotFound.txt"
  5. while read c1 c2 c3; do
  6.     FileExt=${c1##*.}
  7.     FileType=$c3
  8.     grep "$FileExt $FileType" "$FileIn1" >/dev/null 2>&1
  9.     if [ $? -eq 0 ]; then
  10.         echo $c1 $c2 $c3 >> "$FileOut1"
  11.     else
  12.         echo $c1 $c2 $c3 >> "$FileOut2"
  13.     fi
  14. done < "$FileIn2"
复制代码

论坛徽章:
0
3 [报告]
发表于 2024-03-31 17:37 |只看该作者
本帖最后由 inanin 于 2024-03-31 17:39 编辑

回复 2# Shell_HAT

,此脚本应该满足不了需求。感谢,帮忙 !

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
4 [报告]
发表于 2024-03-31 18:19 |只看该作者
回复 3# inanin


2楼代码处理1楼文本能成功吗?

3楼红框里面的意思是1.jpg是跟image/jpeg算一致对吗?
这是新需求,通过1楼的描述无法猜出。

论坛徽章:
0
5 [报告]
发表于 2024-03-31 21:24 |只看该作者
回复 4# Shell_HAT

不是新需求,3楼红框1.jpg跟image/jpeg是在2.txt,就是出现在 1楼说的1.txt里面的文件类型和Content-Type (jpg image/jpeg)

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
6 [报告]
发表于 2024-04-01 15:22 |只看该作者
回复 5# inanin


1楼提供的1.txt是:
jpeg image/jpeg

不是:
jpg image/jpeg

论坛徽章:
0
7 [报告]
发表于 2024-04-01 19:21 |只看该作者
Shell_HAT 发表于 2024-04-01 15:22
回复 5# inanin 1楼提供的1.txt是:jpeg image/jpeg不是:jpg image/jpeg

附件1.zip中有两个文件,1和2.txt,1就是1.txt

论坛徽章:
5
白羊座
日期:2014-10-28 11:23:27水瓶座
日期:2015-01-20 10:19:022015亚冠之柏斯波利斯
日期:2015-07-11 18:17:2015-16赛季CBA联赛之同曦
日期:2015-12-23 12:38:582016猴年福章徽章
日期:2016-02-18 15:30:34
8 [报告]
发表于 2024-04-16 12:09 |只看该作者
本帖最后由 klainogn 于 2024-04-16 12:15 编辑
  1. awk 'NR==FNR{a[$2]=$1;next}$3 in a{if($1 ~ a[$3]"$"){print > "file1";next}}{print > "file2"}' 1.txt  2.txt
复制代码

论坛徽章:
0
9 [报告]
发表于 2024-04-17 16:29 |只看该作者

为什么输出只有file2
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP