0

サーバーのローカル管理者名とパスワードを .csv に含まれているものに変更する必要があります

CSV ファイルには、サーバー、管理者名、およびパスワードが各行で異なるすべての情報を含むリストが含まれています。

csv の先頭には、Server、Admin、PW の 3 つの列があります。

これは、Powershell を使用してどのように行うことができますか?

これを使用してそれらをすべて同じように設定できることはわかっていますが、各 csv 行ごとに設定する必要があります。

foreach ($strComputer in get-content  c:\Servers.txt)
{

$Admin=[adsi]("WinNT://" + $strComputer + "/Administrator, user")
$Admin.psbase.rename("Newname")
$Admin.SetPassword("NewPW")
4

2 に答える 2

1

これを試してください(テストされていません):

import-csv c:\servers.txt | % {

$Admin=[adsi]("WinNT://" + $($_.Server) + "/Administrator, user")
$Admin.psbase.rename($($_.Admin))
$Admin.SetPassword($($_.PW))
$Admin.SetInfo() # I think it's needed
}
于 2013-01-07T15:34:16.830 に答える
1

get-content の代わりに Import-Csv を使用できます。次に、ヘッダー名を使用して変数を指定できます。次のようなファイルがあるとします。

Server,Admin,PW
bla1,bla2,bla3
blaA,blaB,blaC

の出力

foreach ($line in Import-Csv c:\Servers.txt) { echo $line.server }

だろう:

bla1
blaA

コードを完成させるために、次の例を試してください。

foreach ($line in Import-Csv c:\Servers.txt)
{
$Admin=[adsi]("WinNT://" + $line.Server + "/Administrator, user")
$Admin.psbase.rename($line.Admin)
$Admin.SetPassword($line.PW)
}
于 2013-01-07T15:37:56.623 に答える