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


3楼说实际txt文件有25万多行,more命令不是有限制吗?

TOP

本帖最后由 tmplinshi 于 2011-7-24 19:39 编辑

aa.txt 里面只有换行符(0A),没有回车符(0D)。

多谢 CUer 提醒。more 有极限值,6 万多行的时候会暂停。所以以下命令不能处理楼主的文本。
  1. more aa.txt | findstr "^..........$" >aa_10.txt
复制代码

TOP

回复 9# cm535


我试了,行。
可能是你的sed版本有问题吧。我用的4.2.1

TOP

回复 6# cm535 sed "/^.\{10\}$/!d" a.txt >b.txt
复制代码

CUer老大,我试了一下,还是不行!
这是我 ...
cm535 发表于 2011-7-24 15:10



    我测试是可以的。不会没下载 sed 吧?

TOP

回复 9# cm535


请把附件上传到顶楼,以便他人下载测试。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

好难理解...

===========================================
如何删除txt中大于10位和小于10位的数字行?


按这个要求,结果应该是红色部分被删除:

1234567890
adassdscxvv
abcdefghij
_+";?.,asd
123456789001234 ← 大于 10 位的数字行
xcvfxbvfvcbbmn,hjkhkl
sdgdfgfdhgflkili66545
abcdefghijklllsa
0998766666dsgdsg
12345 ← 小于 10 位的数字行
0987 ← 小于 10 位的数字行
aad

===========================================
可是你最后一句却说:
就是说,除了前面四排,后面都不要。

结果为:
1234567890
adassdscxvv
abcdefghij
_+";?.,asd
123456789001234
xcvfxbvfvcbbmn,hjkhkl
sdgdfgfdhgflkili66545
abcdefghijklllsa
0998766666dsgdsg
12345
0987
aad

这样看来的话,楼主的意思是只保留 10 个字符的行,可是第二行却是 11 个字符的。。

理解你的题意真是太痛苦了...
===========================================
你弄错了两个地方:
    1. 应该是删除大于 10 位数或小于 10 位数的行,而不是“如何删除txt中大于10位和小于10位的数字行?”
    2. 测试数据不小心弄错了,第二行多了一位。
===========================================
如果是这么理解的话,希望楼主在顶楼更新一下,以免后来者痛苦。

TOP

回复 6# cm535 sed "/^.\{10\}$/!d" a.txt >b.txt
复制代码

CUer老大,我试了一下,还是不行!
这是我的txt文件,请老大试一试,多谢多谢了!非常感谢!

TOP

回复 6# cm535
  1. sed "/^.\{10\}$/!d" a.txt >b.txt
复制代码

TOP

补正常文件截图

TOP

楼上说得对,帮我找到原因了。确实是格式不对!但我不知道怎么把格式改过来!截图如下:
正常的文件截图:

1234567890
adassdscxvv
abcdefghij
_+";?.,asd
123456789001234
xcvfxbvfvcbbmn,hjkhkl
sdgdfgfdhgflkili66545
abcdefghijklllsa
0998766666dsgdsg
12345
0987
aad


不能使用,需要转格式的文件截图:

我把这个txt文件的内容粘贴如下,一点都看不出格式不一样
00000000
000000000
0000000000
00000000000
000000000000
0000000000000
00000000000000
000000000000000
0000000000000000
0000000000000000000000
000000000000000000000000
0000000000000000000000000
我怎样把格式改成为第一个图那样呢?请高手指点啊!在此多谢多谢了!!!

TOP

代码没错,你会不会文件名弄错了
还有就是文件格式不对
世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

txt内容改为如下数字后,执行代码b也为0字节

00000000
000000000
0000000000
00000000000
000000000000
0000000000000
00000000000000
000000000000000
0000000000000000
0000000000000000000000
000000000000000000000000
0000000000000000000000000

TOP

谢谢CUer老大,不知是什么原因,用你以上的代码,删除我给的上面的txt文件,没有一点问题!但是,我的实际txt文件有25万多行,2.5M大小。执行代码后,产生的b.txt为0字节,空白的!盼解决!多谢多谢老大啊!!!

TOP

  1. findstr "^..........$" a.txt >b.txt
复制代码
1

评分人数

TOP

返回列表