gpt4 book ai didi

powershell - 在Powershell中捕获网络使用异常

转载 作者:行者123 更新时间:2023-12-02 23:45:06 25 4
gpt4 key购买 nike

我很难在Powershell中捕获网络使用异常。

foreach ($k in $file){

try{
net use \\$k\share $password /USER:$username > null
Copy-Item D:\setup.exe \\$k\share
net use \\$k\share /delete > null
write-host "Copied file to \\$k\share"

}
catch [System.Exception]{
continue
}

}

如果脚本无法通过计算机验证,我希望脚本静默继续,但出现以下错误
net : System error 1326 has occurred.
At D:\Script\log_into.ps1:25 char:17
+ net use \\$k\share $password /USER:$username > null
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (System error 1326 has occurred.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError

The user name or password is incorrect.
net : The network connection could not be found.
At D:\Script\log_into.ps1:27 char:17
+ net use \\$k\share /delete > null
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (The network con...d not be found.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError

最佳答案

而是使用PowerShell cmdlet映射驱动器,以便您可以正确捕获任何异常。

这仅适用于PowerShell 3.0及更高版本,因为较早版本中的-Credential参数存在一个错误(只是不起作用)。如果您需要v2兼容性,请发表评论,我会进行更新。

$userPass = ConvertTo-SecureString "password" -AsPlainText -Force
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $userPass

foreach ($k in $file){

try{
New-PSDrive -Name Z -PSProvider FileSystem -Root \\$k\share -Credential $Credential;
Copy-Item D:\setup.exe Z:\
Remove-PSDrive -name Z
write-host "Copied file to \\$k\share"

}
catch [System.Exception]{
continue
}

}

关于powershell - 在Powershell中捕获网络使用异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25366740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com