
У меня есть скрипт PowerShell v1, который подключается к удаленному серверу через UNC-путь. После перезагрузки требуется аутентификация, поскольку Windows, по-видимому, не запомнит, поэтому скрипт не сможет подключиться к удаленному серверу
Как эта ситуация обрабатывается программно из скрипта PowerShell?
Мне нужно
1) повторная аутентификация
2) подключиться к удаленному серверу через UNC-путь
Может быть команда "net"???
Как это сделать в моем скрипте PowerShell?
Get-ChildItem -Path "\\REMOTESERVER\Data\Files" -Filter "*.journal" |
Where-Object { $_.Name -match 'Daily_Reviews\[\d{1,12}-\d{1,12}\].journal' } |
Sort-Object -Property CreationTime | ForEach-Object
{
$sourcefile = $_.Name
[...]
}
Спасибо
решение1
Вы можете хранить учетные данные в своих скриптах. Затем вы можете использоватьPSКредитные данныеобъект сНовый-PSDriveкомандлет для подключения к общему ресурсу. Затем объект PSDriveInfo доступен вашему скрипту в течение всего сеанса.
$username = 'domain\username'
$password = 'secret'
$password = $password | ConvertTo-SecureString -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential($username, $password)
New-PSDrive -Name journals -PSProvider FileSystem -Root '\\remoteserver\data\files' -Credential $credential | ForEach-Object { Set-Location "$_`:" }
Get-ChildItem -Filter "*.journal"