Poz*_*nux 5 windows powershell file
我有一个 file1.txt,其中包含:
一号线
2号线
3号线
4号线
我想从 file1.txt 中删除存在于另一个 file2.txt 中的所有行:
线 3 线
2
结果应该是:
线 1
线 4
我尝试使用此命令,但仅当我在 file2.txt 中有一行时才有效:
Get-Content C:\file1.txt | Where-Object {$_ -notmatch $(get-content C:\file2.txt)}
Run Code Online (Sandbox Code Playgroud)
注意:我不想比较 2 个文件以查看它们是否相同。
任何的想法?我对 powershell 很陌生。
下一个代码片段显示了实现相同结果的两种不同方法:
$filebefore="$env:TEMP\beforerestart.txt" # change to match your circumstances
$file_after="$env:TEMP\after_restart.txt" # ditto
### Compare-Object way
$array = Compare-Object $(Get-Content $filebefore) $(Get-Content $file_after)
$array | where {$_.SideIndicator -eq "<="} |
Format-Table -Property InputObject -AutoSize -HideTableHeaders
### -NotIn operator way
$(Get-Content $filebefore) |
Where-Object {$_ -notIn $(Get-Content $file_after)}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2143 次 |
| 最近记录: |