كيفية تصفية عناصر متعددة من ريجرستري باستخدام ورير-كائن-مثل?
-
21-12-2019 - |
سؤال
أحاول الحصول على بعض العناصر من التسجيل باستخدام where-object
, ، يمكنني فقط تصفية عنصر واحد ولكن متعدد items...is هناك أي شيء خاطئ مع بلدي النصي?
هذا رمز يعمل بشكل جيد لعنصر واحد فقط
Get-ChildItem HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ |
ForEach-Object {Get-ItemProperty $_.pspath} |
Where-Object {
$_.Displayname -like 'adobe air'
} |
Select-Object DisplayName,DisplayVersion |
Sort-Object DisplayName |
Out-GridView
لكن إذا قمت بتعيينه لتصفية عناصر متعددة ، فإنه يعمل ، وينتهي ، دون أي نتيجة...أي فكرة لماذا?
Get-ChildItem HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ |
ForEach-Object {Get-ItemProperty $_.pspath} |
Where-Object {
$_.Displayname -like 'adobe air' -and
$_.Displayname -like 'Java*' -and
$_.Displayname -like 'TeamViewer*'
} |
Select-Object DisplayName,DisplayVersion |
Sort-Object DisplayName |
Out-GridView
إذا كنت تستخدم
Where-Object {
$_.Displayname -like "Security*"
}
انه يعطيني فقط 3 البنود مباريات Security
, ليس كل منهم, لماذا ا?
المحلول
المسألة هي المنطق الذي وضعت في. -and
يعني أن كلاهما يجب أن يكون صحيحا ، استخدم -or
بدلا من ذلك.
لا تنتمي إلى StackOverflow