Originally posted by willsort at 2006-9-13 23:25:
Re a9319751『第 11 楼』:
很抱歉,我的操作失误给你带来了负面影响,对此我郑重表示道歉!
现已对原处理方式作出纠正,望周知。
willsort斑竹这么客气啊
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
Originally posted by willsort at 2006-9-13 23:25:
Re a9319751『第 11 楼』:
很抱歉,我的操作失误给你带来了负面影响,对此我郑重表示道歉!
现已对原处理方式作出纠正,望周知。
Originally posted by namejm at 2006-9-13 12:01:
如果楼主只是想把重复N次的行打印一次,并且无须保持行的相对位置不变的话,可以参考bagpipe曾经写过的一段代码:
写的很好
@echo off
REM 却掉重复的行,按原顺序只留唯一
REM 用于挑出唯一命令、用于在让搜索到的电子邮件地址的唯一不重复性
REM 如果是含有批处理禁忌的特殊符号就算了,它就适合于上面功能。
REM ============== S.bat ======================
REM 请将需要唯一不重复行的数据存成 dat.txt 文件名即可
REM 以防止万一,自己建立的目录你自己删吧~:)
md redtek
for /f "tokens=*" %%a in (dat.txt) do (
md redtek\^"%%a^"
)
dir /b /od redtek\ > Ok.txt
Notepad.exe Ok.txt
dos
china
bat
redtek@sweetmeet.com
dos
china
bat
Redtek@sweetmeet.com
dos
china
bat
com
mco
comm
comm on
redtek@sweetmeet.com
on commm
com on mmn
comm ono
bta
bat b
2006
2006 12
2006.12.2006
其实,谁让DOS建目录的时候不能建重名的目录名啊,哈哈……
那规则既然被定好了,我们就利用DOS建目录不能重名,
所以,有重名的系统自然会提示说什么什么,
但是!!它是建不上一个重名的目录的,哈哈……
所以,DIR加参数只列文件名,然后按照我建立目录的时间来排序,
当然就是具有唯一性了。
不好意思,这是个开玩笑的玩法,不能用在别的有用的地方,权当大家笑笑开开心~:)
[ Last edited by redtek on 2006-9-26 at 07:31 ]
starttime=timer
on error resume next
set fso=createobject("scripting.filesystemobject")
set fd=fso.getfile(Wscript.Arguments(0))
set file=fso.opentextfile(Wscript.Arguments(0),1)
Do while not(file.AtEndOfStream)
n = n + 1
tmp = file.readline
ReDim Preserve temp(n-1)
temp(n-1)= tmp
loop
file.Close
For x=0 to n-1
For y= 1 to n-1
If x <> y Then
If temp(x) =temp (y) And x < y Then
temp(y)="{059F6FBC-10FB-4FBC-BCF7-DB362A3DB1DB}"
End If
End If
Next
Next
For x=0 to n-1
if temp(x)<>"{059F6FBC-10FB-4FBC-BCF7-DB362A3DB1DB}" then S= S & temp(x) & vbcrlf
Next
Set file = fso.OpenTextFile(Wscript.Arguments(0), 2, True)
file.write S
file.Close
endtime=timer
yongshi=cdbl(endtime-starttime)
msgbox "已经将" & fd.name & "文件里相同行的内容删除,用时" & Round(yongshi,2) & "妙。" & vbcrlf & "(保留了相同行内容的最上面的一行!)" ,48+4096,"操作完成"
set fso=nothing
set fd=nothing
set file=nothing