[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 请教批量处理特定字符内容数值带文件名排序问题

请教一个问题:一个文件夹中有一些文件aaaa、bbbb等,每个文件内容中都有几个(\VR=数值\)这样的形式,如下图:

我的目的是将这些文件从后往前数,第一次出现的(\VR=数值\)中的数值进行排序,最重要的是要显示这些数值来自的文件名,目标如下图:

想通过一些简单的命令如:for循环 ,grep, awk,  sed, sort等组合来解决 。这个问题不容易解决,谢谢大家!!!!
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

回复 3# Gin_Q
非常感谢关注,我即刻上传文件。

TOP

非常感谢你的关注。我帖子之前说的比较繁琐,我已将问题替换为:有个文件夹下由aaa、bbbb、cccc.....等文件。这些文件内容中都不只一次出现VOL Sert:并在其所在的行出现唯一等号= 。等号后空两格有一串数值,这个数值小数点不一定在哪,但都是由12个数字、一个小数点.、一个负号-组成。请见附件aaaa、bbbb、cccc。我的目的是想用sed、for、awk、 sort等组合命令将每个文件倒数第一个VOL Sert:这行等号后的这个数值提取从小到大排序,最重要的是显示每个数值来自的文件名。请见附件jieguo。这个问题好久都没解决,可能有点难,非常感谢!!!谢谢!!!



附件: 您需要登录才可以下载或查看附件。没有帐号?注册

TOP

回复 4# dingniu2
专家,问题的新描述以及相关txt文件已上传,感谢!!!

TOP

回复 7# Gin_Q
高手,多谢!!!还有一个难点,就是如何只排列每个文件倒数第一个VOL Sert:这行等号后的这个数值?不要除倒数第一个数值以外的其它值?就差这一步,万分感谢!!!!

TOP

Gin_Q 发表于 2020-3-21 11:45

大神,还是不行,我发了3个待处理文件,其它文件也都有VOL Sert:行,对这行规律都一样,但是行间可能有其它干扰行,也就是VOL Sert:行不确定出现在哪行,我以为编写脚本可以寻找VOL Sert:行的=后空两格的数?我发了更具特殊性的dddd,请大神帮忙取倒数第一个VOL Sert:行对应的数值排序。这个还是有难度,万分感谢!!!
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

TOP

回复 10# Gin_Q
谢谢大神回复,还有一个难点问题没解决,就是只要对每个文件倒数第一个VOL Sert:后那个数值排序,大神你的脚本是对所有VOL Sert:后那个数值排序,我尝试改你的脚本但没成功,请大神赐教,万分感谢!!!!

TOP

我对shell了解不多,你应该多学学linux三剑客
排序文本最后一次匹配到的数据
Gin_Q 发表于 2020-3-21 15:10

感谢感谢!我学了一段时间了,感觉这东西难度较大。问一句题外话,你见多识广,能用一行命令批量在一堆txt文件中的从上往下数第三个空行插入abcd四个字符吗?(这一堆txt文件空行位置和数目都不一致)

TOP

在第四行前面第三行下面
Gin_Q 发表于 2020-3-21 15:26

这个简单的我会,我那个问题是在第三个空行插入abcd。这些文件第三个空行说不定在那行。我有个思路是这样的:先把这个文件夹所有的文件中空行的行号提出来,然后有了第三个空行的行号就可以在这个行号处加abcd。应该一个不是很复杂的命令,但没写成功。

TOP

返回列表