Get-ADObject: Galat parsing query Not support: -neq '?
Menggunakan: https://docs.microsoft.com/en-us/powershell/module/addsadministration/get-adobject?view=win10-ps
Bagaimana saya bisa mendapatkan hasilnya sehingga hanya menampilkan semua Pengguna AD & Komputer aktif saja:
Get-ADObject -Filter 'Enabled -eq $True -and isDeleted -neq $True -and -not (isRecycled -eq $True) -and name -ne "Deleted Objects"'
Kesalahan:
Get-ADObject : Error parsing query: 'Enabled -eq $True -and isDeleted -neq $True -and -not (isRecycled -eq $True) -and name -ne "Deleted Objects"' Error Message: 'Operator Not supported: -neq' at position:
'34'. At line:1 char:1
+ Get-ADObject -Filter 'Enabled -eq $True -and isDeleted -neq $True -an ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ParserError: (:) [Get-ADObject], ADFilterParsingException
+ FullyQualifiedErrorId : ActiveDirectoryCmdlet:Microsoft.ActiveDirectory.Management.ADFilterParsingException,Microsoft.ActiveDirectory.Management.Commands.GetADObject
Jawaban
Jika Anda benar-benar hanya mencari pengguna & komputer, gunakan kueri yang mengatakan bahwa:
Get-ADObject -Filter 'ObjectClass -eq "user" -or ObjectClass -eq "computer"'
Menahan kesalahan operator yang telah disebutkan, Get-ADObject
tidak dapat mengutip dan menggunakan ganda$true/$palsu di dalam. Itu akan berkembang dan keluar sebagai benar / salah. Menjalankan perintah seperti Get-ADObject -Filter "Enabled -eq $true"
mengembalikan kesalahan:
Get-ADObject : Error parsing query: 'Enabled -eq True' Error Message: 'syntax error' at position: '13'.
Jika Anda menjalankannya dengan tanda kutip tunggal, ini akan berjalan tetapi di lingkungan saya tidak mengembalikan apa pun, kemungkinan karena "Enabled" bukan properti yang dapat kueri dari objek yang lebih umum yang dikembalikan oleh Get-ADObject
dan tidak seperti Get-ADUser/Computer
. Jadi, Anda harus bermain-main dengan kutipan dan kueri itu sendiri.
Selain mengapa menggunakan sesuatu seperti -not (isRecycled -eq $true)
ketika Anda bisa mengatakannya isRecycled -eq $false
. Anda sudah memiliki kueri yang relatif kompleks di tangan Anda, saya akan memotong inversi yang tidak perlu ...
Tidak ada yang namanya -neq
. Apa yang Anda cari adalah -ne
Baca lebih lanjut di sini:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_comparison_operators?view=powershell-5.1