我完全不熟悉脚本,但是想使用Windows CLI比较两个文本文件list1.txt和list2.txt,每个文件都包含一个值列表,并生成一个新的文本文件,其中包含在一个列表但不在另一个列表中。我一直在阅读Powershell,Shell,Batch文件等,但似乎无法弄清楚基础知识。我是否需要下载任何内容才能使用这些语言?或者我如何使用Windows CLI直接比较文件?感谢。
答案 0 :(得分:3)
这在PowerShell中是非常可行的,它预装在Windows 7+中,并且可以轻松添加到Vista或更低版本中 - 在Google上查找一些初学者的PowerShell信息。您将要使用Get-Content
和Compare-Object
,然后使用Where-Object
来选择您关注的差异指标。祝你好运!
答案 1 :(得分:0)
要在常规Windows shell中执行此操作,只需执行以下操作:
for /f "delims=" %A in (list1.txt) do @find "%A" "list2.txt" >nul2>nul || echo.%A>>list3.txt
或者如果您将其放在批处理文件中,请将%符号加倍。
for /f "delims=" %%A in (list1.txt) do @find "%%A" "list2.txt" >nul2>nul || echo.%%A>>list3.txt
这将为list1.txt中的所有行提供list2.txt中不存在的行,并将它们保存到名为list3.txt的文件中。