Windows

使用 powershell 進行使用者身份驗證

  • August 17, 2015

我有以下簡單的腳本,用於將一些文件推送到許多 Win7 和 Server2008 機器。在大多數情況下,本地使用者沒有密碼。但是腳本失敗了,因為我正在嘗試通過管理員共享 (c$) 進行寫入。在 ip.txt 中為每台主機傳遞使用者的最簡單方法是什麼?

此外,如果我在域中,那麼修改腳本以使用使用者和密碼進行身份驗證是多麼簡單。

Write-Host 'Deploy Tools'

   $reader = [System.IO.File]::OpenText("c:\scripts\ip.txt")
   try {
       for(;;) {
           $line = $reader.ReadLine()
           if ($line -eq $null) { break }  
               echo "**** files being copied to: $line ****"
               xcopy c:\scripts\tools  \\$line\c$\windows\system32\ /Y
       }
   }
   finally {
       $reader.Close()
   }

由於您已經在呼叫非 PowerShell 命令 ( xcopy),因此您也可以呼叫另一個命令:

net use \\$server\c$ /user:$username $password
xcopy c:\scripts\tools  \\$server\c$\windows\system32\ /Y

至於在輸入文件中儲存使用者名和密碼,您可以使用 CSV 格式和Import-Csvcmdlet 輕鬆完成。

另外,請參閱此 StackOverflow 問題

引用自:https://serverfault.com/questions/714838