Posh-SSH Set-Item 上传到 Apple School Manager 时因一般错误而失败。 Powershell

问题描述 投票:0回答:1

我有一个脚本正在上传到 Apple 校园教务管理。它将连接到服务器,我可以使用获取/设置位置命令在上传服务器上导航,但是我无法设置该项目,只能得到一个超级通用错误。我有一个几乎相同的脚本上传到 smart 并且它有效。知道从哪里开始寻找吗?

我仍然不太精通脚本编写,我几乎只是依赖于这份工作,所以总的来说,我可能会遇到很多问题。

我尝试了各种方法,例如上传路径的变化、设置超时、将上传路径中的所有“”交换为“/”。

服务器是基于 $thissession 中存储的会话信息的 paramiko 服务器。

函数后面的异常:

TargetSite     : Renci.SshNet.Sftp.SftpFileAttributes RequestLStat(System.String)
Message        : Failure
Data           : {}
InnerException : 
HelpLink       : 
Source         : Renci.SshNet
HResult        : -2146233088
StackTrace     :    at Renci.SshNet.Sftp.SftpSession.RequestLStat(String path)
                    at Renci.SshNet.SftpClient.Exists(String path)
                    at SSH.SetSftpItem.ProcessRecord()
                    at System.Management.Automation.CommandProcessor.ProcessRecord()
Function Upload{
    $fileName = "$outputFolder\asm.zip"
    if (Test-Path $fileName) { Remove-Item $fileName }
    
    Compress-Archive -Path $outputFolder\* -DestinationPath $fileName

    $ftpFile = "<server path>\creds.json"
    $ftpCreds = Get-Content $ftpFile| ConvertFrom-Json -AsHashtable

    $Password = ConvertTo-SecureString $ftpCreds.password -AsPlainText -Force
    $Credential = New-Object System.Management.Automation.PSCredential ($ftpCreds.username, $Password)
    $SftpIp = $ftpCreds.uploadServer

    $ThisSession = New-SFTPSession -ComputerName $SftpIp -Credential $Credential -AcceptKey -ConnectionTimeout 120 -OperationTimeout 120 -Verbose -ErrorVariable SessionERR

    $remotePath = '/dropbox'
 
    try{
        Set-SFTPItem -SessionId ($ThisSession).SessionId -Path $fileName -Destination $remotePath -Force -Verbose -Debug
    }
    catch{

        ConvertTo-Json $_
    }
    finally{
        Remove-SFTPSession -SessionId ($ThisSession.SessionId)
        }
        #>
    } 
powershell ssh sftp
1个回答
0
投票

我只是想跟您跟进此事。几个月来,我的 Apple School Manager 服务器一直遇到完全相同的问题。我的脚本运行良好,上传始终有效。我认为它一年前就停止工作了,从那以后我就无法使用我的 Powershell 脚本上传 zip 文件。我已经尝试了所有我能找到的方法,但都无济于事。

我们现在得到的只是一条通用的“失败”错误消息,即使有详细的调试信息。

我们必须手动上传,因为如果这样的话,因为使用任何客户端都效果很好。但我希望我们的自动化能够像以前一样工作。

苹果在这方面缺乏帮助真的很难接受。

© www.soinside.com 2019 - 2024. All rights reserved.