Board logo

标题: [文件操作] [已解决]批处理怎么删除一个文件里的重复字符? [打印本页]

作者: ilovebath    时间: 2011-10-16 13:37     标题: [已解决]批处理怎么删除一个文件里的重复字符?

怎么删除一个文件里的重复字符?

例如:我的文件里是这样的
一行为一整个字符

aaaa
dffd
sdffds
fdfd
aaaa
fdfd

我想做到的是把重复的所有行只保留一行。

aaaa
dffd
sdffds
fdfd

这样。求助

写到一个新文件里.
作者: weichenxiehou    时间: 2011-10-16 13:53

回复 1# ilovebath
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%i in (a.txt) do (
  3.   if not defined %%i echo,%%i&set "%%i=1"
  4. )>new.txt
复制代码

作者: ilovebath    时间: 2011-10-16 15:24

出错。希望你测试一下。
作者: ilovebath    时间: 2011-10-16 15:27

回复 2# weichenxiehou


    出错了。谢谢再给一个完整的代码。
作者: Batcher    时间: 2011-10-16 15:40

回复 3# ilovebath


哪里出错了?希望你把测试结果告诉大家。
作者: ilovebath    时间: 2011-10-16 15:48

回复 5# Batcher


    就是没有反应,new.txt里面什么都没有。是空文件。
作者: FOR    时间: 2011-10-16 16:04

结尾少了个反括弧
))>new.txt
作者: weichenxiehou    时间: 2011-10-16 17:11

回复 4# ilovebath
7楼正解,笔误(哦,应该叫键盘误)。。
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%i in (a.txt) do (
  3.   if not defined %%i echo,%%i&set "%%i=1"
  4. ))>new.txt
复制代码

作者: sxw    时间: 2011-10-16 17:51

搜索论坛就有该类题目
作者: ilovebath    时间: 2011-10-17 19:37

回复 8# weichenxiehou

谢谢了。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2