Powershell Compare-Object не работает должным образом - PullRequest
0 голосов
/ 16 сентября 2011

Я запускаю следующий скрипт для сравнения данных в переменной с данными в текстовом файле. Результаты показывают, что данные в переменной не совпадают с текстовым файлом, хотя я отформатировал их так же, и они выглядят одинаково в результатах? Они выглядят одинаково, почему powershell считает, что они разные?

Сценарий:

$rn = Get-WMIObject Win32_Process -computer servername -credential domain\administrator -filter "Name='process.exe'” | Select-Object path | Sort-Object path
$lst = Get-Content “C:\Scripts\Process Monitor Scripts\ProcessList.txt”
Compare-Object $lst $rn

Results:
InputObject                             SideIndicator
-----------                             -------------
@{Path=Y:\Folder1\process.exe}        =>
@{Path=Y:\Folder2\process.exe}        =>
@{Path=Y:\Folder3\process.exe}        =>
@{Path=Y:\Folder1\process.exe}        <=
@{Path=Y:\Folder2\process.exe}        <=
@{Path=Y:\Folder3\process.exe}        <=

1 Ответ

2 голосов
/ 16 сентября 2011

Раскройте свойство пути, вы сравниваете объекты со свойством пути с простыми строками.

$rn = Get-WMIObject Win32_Process -computer servername -credential domain\administrator -filter "Name='process.exe'” | select -expand path
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...