当我执行命令时:
$var = @{a=1;b=2}
Run Code Online (Sandbox Code Playgroud)
在 Powershell(版本 3)中,$var最终的值为{System.Collections.DictionaryEntry, System.Collections.DictionaryEntry}. 为什么会这样?如何存储我想要存储的值?
此问题最流行的答案涉及以下 Windows powershell 代码(已编辑以修复错误):
$file1 = Get-Content C:\temp\file1.txt
$file2 = Get-Content C:\temp\file2.txt
$Diff = Compare-Object $File1 $File2
$LeftSide = ($Diff | Where-Object {$_.SideIndicator -eq '<='}).InputObject
$LeftSide | Set-Content C:\temp\file3.txt
Run Code Online (Sandbox Code Playgroud)
我总是得到一个零字节文件作为输出,即使我删除了 $Diff 行。
为什么输出文件总是为空,如何修复?