说我有一个像这样的文件:
@H_502_14@
apple pear lemon lemon pear orange lemon
如何制作它以便我只保留独特的线条,所以我得到:
apple pear lemon orange
@echo off setlocal disabledelayedexpansion set "prev=" for /f "delims=" %%F in ('sort uniqinput.txt') do ( set "curr=%%F" setlocal enabledelayedexpansion if "!prev!" neq "!curr!" echo !curr! endlocal set "prev=%%F" )
它的作用:首先对输入进行排序,然后按顺序进行排序,只有当前行与前一行不同时才输出.如果不需要处理特殊字符(这就是为什么那些setlocal / endlocal用于),它可能更简单.它只是回显到stdout的行,如果你想写入文件do(假设你命名你的批量myUniq.bat)myUniq>> output.txt