我想比较2个文本文件,然后将差异输出到另一个文本文件中。
compare-object (get-content c:\temp\hostname_old.txt) (get-content c:\temp\hostname_new.txt) | Select-Object -ExpandProperty InputObject | Out-File $Location
hostname_old.txt
server02
server05
server04
server06
server01
hostname_new.txt(名称重复)
server04
server01
server02
server04
server02
结果:
server04
server02
server05
server06
请注意server04
和server02
在此差异列表中的显示方式,即使它们在两个输入文件中也存在。
这就是我想要的:
server05
server06
答案 0 :(得分:0)
在比较之前使用Select-Object -Unique
消除重复项:
compare-object -PassThru `
(get-content c:\temp\hostname_old.txt) `
(get-content c:\temp\hostname_new.txt | Select-Object -Unique)
与上一个问题的this answer一样,-PassThru
用于直接传递不同的行,而没有[pscustomobject]
包装器(通过它们的{ {1}}默认输出的{1}}属性。