从文件中删除多行

时间:2014-03-11 16:31:08

标签: powershell command-prompt

我有一个包含多行文字的文件。

示例:

Line 1
Line 2
Line 3
Line 4
Line 1
Line 2
Line 5
Line 6
Line 1
Line 2

我想删除第1行和第2行的重复。我想从Windows上的命令行(cmd或Powershell)执行此操作。有没有简单的方法来实现它......? 我希望我的输出如下......

Line 1
Line 2
Line 3
Line 4
Line 5
Line 6

还有一件事要提到重复的行总是一样的,但它们的数量很多。

3 个答案:

答案 0 :(得分:3)

您可以在Powershell中使用Select-Object -Unique

Select-Object

例如:

Get-Content test.txt | Select-Object -Unique > new.txt

会使用new.txt中的唯一行填充test.txt

答案 1 :(得分:0)

uniq命令正是这样做的:http://unixhelp.ed.ac.uk/CGI/man-cgi?uniq

答案 2 :(得分:0)

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
(
SET "line="
FOR /f "delims=" %%a IN ('sort q22351713.txt') DO (
 IF "!line!" neq "%%a" ECHO(%%a
 set "line=%%a"
)
)>newfile.txt

GOTO :EOF

我使用名为q22351713.txt的文件进行测试。 生成newfile.txt