Windows
使用 powershell 進行使用者身份驗證
我有以下簡單的腳本,用於將一些文件推送到許多 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-Csv
cmdlet 輕鬆完成。另外,請參閱此 StackOverflow 問題。