私はcsvにいくつかの広告属性をエクスポートするスクリプトを持っています 私はPsObjectの 'initials'属性の最後の3文字を持っていますが、これで時間を費やした... 私を助けてくれますか?Powershell - PsObjectのAD属性から最後の3文字を取得
エラー:
*Method invocation failed because [Microsoft.ActiveDirectory.Management.ADUser] doesn't contain a method named 'substring'.
At C:\scripts\ExtractDWH\Untitled2.ps1:15 char:26
+ "Test" = $_.substring <<<< ($_.initials.length - 3, 3)
+ CategoryInfo : InvalidOperation: (substring:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound*
コード:
$output = 'c:\scripts\ExtractDWH\consultants_test.csv'
$users = Get-ADUser -Filter * -SearchBase "ou=Rennes,ou=Consultants,ou=Utilisateurs,ou=FedFinance,dc=dfedinterim,dc=fr" - Properties * | ? { ($_.initials -notlike 'IC*') -and ($_.initials -notlike 'IM*') -and ($_.initials -ne $null) }
fileIn | % {
$users | % {
New-Object psobject -Property @{
"ID" = $_.initials
"Last 3 strings ID" = $_.substring($_.initials.length - 3, 3)
"Centre Imputation" = $_.extensionAttribute10
"Date Entrée" = $_.extensionAttribute9
# The line below does not work
"Test" = $_.substring($_.initials.length - 3, 3)
}
}
} | Select-Object ID, 'Centre Imputation', 'Date Entrée', 'Test'
| Export-CSV $output -Delimiter ';' -Encoding "UTF8" -NoTypeInformation `
ありがとうございます!これに
"Last 3 strings ID" = $_.substring($_.initials.length - 3, 3)
:この
注意:-properties *は、存在するすべての単一の広告属性を取得するため実際には良い考えではありません。代わりに、次のようなプロパティを挙げてください。 '-properties Initials、extensionAttribute10、extensionAttribute9' – Kiran
私は* thanksを修正しました – olivier