【发布时间】:2023-04-03 17:53:01
【问题描述】:
我有一个 file1.txt,其中包含:
第一行
第2行
第3行
第4行
我想从 file1.txt 中删除另一个 file2.txt 中存在的所有行:
第3行
第2行
结果应该是:
第一行
第 4 行
我尝试使用此命令,但仅当我在 file2.txt 中有一行时它才有效:
Get-Content C:\file1.txt | Where-Object {$_ -notmatch $(get-content C:\file2.txt)}
注意:我不想比较两个文件是否相同。
有什么想法吗?我对 powershell 很陌生。
【问题讨论】:
-
使用
-in而不是-match,在这里的答案中解释了几乎相同的事情:stackoverflow.com/questions/39307707/… -
顺便说一句,为了更快地学习 PS,使用 PowerShell ISE,您可以在其中调试代码并在任何关键字上按 F1 以查看内置帮助(注意它不像在线文章那样完整,有时它会显示控制台中匹配主题的列表,在这种情况下选择一个并再次按 F1)。
标签: windows file powershell