powershell - WebClient 下载有时通过有时失败
问题描述
我正在使用 WebClient.Download 方法下载带有 PowerShell v2 脚本的文件。该脚本用于 Azure DevOps 管道。我的脚本有时会通过,但有时会失败并显示错误消息:
CategoryInfo : NotSpecified: (:) [], ParentContainsErrorRecordExceptionfullyQualifiedErrorId
: WebException
这是脚本:
$file = "A - B - C.exe"
$webclient = New-Object System.Net.WebClient
$webclient.Credentials = New-Object System.Net.NetworkCredential($username,$password)
$source = 'ftp://folder/' + $file
$filedownload = 'localpath/' + $file
$webclient.DownloadFile($source, $filedownload)
磁盘空间足够,我有足够的权限将文件下载和存储到本地路径,并且凭据有效。
我想知道是什么导致随机失败,我该如何解决?
[更新]
如果有人也遇到同样的问题,我的随机失败的情况是因为我在代码中犯了错误,把“//”而不是“/”。
所以这将随机失败:
$webclient.DownloadFile("ftp://folder//file", $filedownload)
这将通过:
$webclient.DownloadFile("ftp://folder/file", $filedownload)
解决方案
推荐阅读
- c++ - 将 CMake 标志传递给 VS 代码“任务”?
- node.js - 有没有办法用 express 和 node 删除 Mongodb 数据库中的嵌套列表项?
- recursion - 递归堆栈溢出与 F# 中的异常
- vim - 如何设置由 vim :sh 命令生成的 shell 的环境变量
- oracle - 查询查找主键和外键列以及代理键 oracle sql
- powerbi - Dax TotalYTD 和 SamePeriodLastYear 不工作
- python - 是否有可能只有一个 while 循环的运行时间为 O(n)?
- r - 如何使用R中的stringr将一位数字替换为两位数字
- c++ - C++ 将文本文件中的行写入新文件。复制预览行而不是当前行
- regex - 正则表达式转换为 Oracle 表达式 - (\b|\d)(?i)INT(\b|\d)