Get-ADObject:クエリの解析エラーサポートされていません:-neq '?
使用: https://docs.microsoft.com/en-us/powershell/module/addsadministration/get-adobject?view=win10-ps
すべてのアクティブなADユーザーとコンピューターのみが表示されるように結果を取得するにはどうすればよいですか。
Get-ADObject -Filter 'Enabled -eq $True -and isDeleted -neq $True -and -not (isRecycled -eq $True) -and name -ne "Deleted Objects"'
エラー:
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
回答
本当にユーザーとコンピューターを探しているだけの場合は、次のようなクエリを使用してください。
Get-ADObject -Filter 'ObjectClass -eq "user" -or ObjectClass -eq "computer"'
すでに述べた演算子エラーにGet-ADObject
も関わらず、二重引用符で囲んで使用することはできません$true/$内部は偽。それらは拡大し、単に真/偽として出てきます。次のようなコマンドを実行するとGet-ADObject -Filter "Enabled -eq $true"
、エラーが返されます。
Get-ADObject : Error parsing query: 'Enabled -eq True' Error Message: 'syntax error' at position: '13'.
あなたは、単一引用符でそれを実行しない場合は、実行されますが、私の環境では、おそらく「有効」ためで返されるより一般的なオブジェクトからクエリ可能なプロパティではありません、何も返さないGet-ADObject
とは異なりGet-ADUser/Computer
。したがって、引用符とクエリ自体を試してみる必要があります。
さておき-not (isRecycled -eq $true)
、あなたがただ言うことができるときのようなものを使う理由はさておきisRecycled -eq $false
。あなたはすでにあなたの手に比較的複雑なクエリを持っています、私は不必要な反転を切り刻むでしょう...
のようなものはありません-neq
。あなたが探しているのは-ne
ここでもっと読む:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_comparison_operators?view=powershell-5.1