ケニー・ボーンズ:
私はコンピュータに関連付けられているユーザ名の束を含むCSVファイルを持っています。このリストには、ユーザー名のみが含まれています。
私は、ユーザー名に基づいて名、姓などで複数の列を追加します。私は、任意のhickupsせずにこれを行うことができることがPowerShellを使用し、あまりにも慣れていないんです。
しかし、これまでのところ、私もこれよりもさらに取得することはできません。
$user_list = Import-Csv C:\temp\daclientsTest.csv
$user_list.foreach(
{
$SAMAccountName = $_.'USERNAME'
write-host $SAMAccountName
}
)
そして、私は$ SAMアカウント変数から何も得ます。誰もが任意のヒントを得ましたか。
CSVファイルには、次のようになります。
HOSTNAME;USERNAME
PC01259;10412;
PC01946;10319;
もちろんリストは、超長期であり、唯一のこれら2つの変数が含まれています。私は、ユーザー名を取る特定の変数を取得し、新しい列にそれらを追加する必要がありますので、
編集:誰もがスクリプトを見たい場合は(それがエラーのおそらくフルだが、それは私が幸せそうに働きました):
$user_list = Import-Csv C:\temp\daclients.csv -Delimiter ';'
# Follows this format: HOSTNAME;USERNAME;
$user_list.foreach(
{
If ($_.USERNAME) {
$NewObjectList = New-Object -TypeName psobject
$Hostname = $_.HOSTNAME
$SAMAccountName = $_.USERNAME
$ADUser = Get-ADUser -Identity $SAMAccountName -Properties DisplayName,extensionAttribute2,physicalDeliveryOfficeName,title
$DisplayName = $ADUser.DisplayName
$physicalDeliveryOfficeName = $ADUser.physicalDeliveryOfficeName
$title = $ADUser.title
$EXTENSIONATTRIBUTE2 = $ADUser.extensionAttribute2
$NewObjectList | Add-Member -MemberType NoteProperty -Name ComputerName -Value $Hostname
$NewObjectList | Add-Member -MemberType NoteProperty -Name UserName -Value $SAMAccountName
$NewObjectList | Add-Member -MemberType NoteProperty -Name DisplayName -Value $DisplayName
$NewObjectList | Add-Member -MemberType NoteProperty -Name title -Value $title
$NewObjectList | Add-Member -MemberType NoteProperty -Name ExtensionAttribute2 -Value $EXTENSIONATTRIBUTE2
$NewObjectList | Add-Member -MemberType NoteProperty -Name physicalDeliveryOfficeName -Value $physicalDeliveryOfficeName
#Create new csv-file
$NewObjectList | export-csv -Append -Path C:\temp\daclientsNEW.csv
}
}
)
AdminOfThings:
CSVファイルは、セミコロンで区切られているので、あなたはおそらく実行しているときに区切り文字を指定する必要がありますImport-Csv
。
$user_list = Import-Csv C:\temp\daclientsTest.csv -Delimiter ';'
説明:
実行中のインポート、CSVファイルをせずに-Delimiter
、あなたの現在のカルチャのリストの区切り文字に一致するデフォルトの区切り文字を使用しています。あなたは次のことを実行して、リストの区切り文字を見ることができます:
[cultureinfo]::CurrentCulture.TextInfo.ListSeparator