【发布时间】:2015-10-07 08:59:53
【问题描述】:
我正在尝试使用 FTP 将文件上传到 FTP 服务器。我在网上找到了以下脚本,但无法运行。
$UserName = 'username'
$Password = 'password'
$LocalFilePath = 'c:\FolderName\x.txt'
$RemoteFileName = 'x.txt'
$ServerName = 'my.ftpserver.co.uk'
$webclient = New-Object System.Net.WebClient
$webclient.Credentials = New-Object System.Net.NetworkCredential($UserName, $Password)
#Connect to FTP
$uri = New-Object System.Uri(“ftp://$ServerName/$RemoteFileName”)
write-host $uri
#upload as file
$webclient.UploadFile($uri, $LocalFilePath)
但是当我运行它时,我得到以下错误:
Exception calling "UploadFile" with "2" argument(s): "An exception occurred during a WebClient request."
At line:21 char:22
+ $webclient.UploadFile <<<< ($uri, $LocalFilePath)
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException
谁能指出我正确的方向? 我可以在我的电脑上使用 Filezilla 等进行连接,所以它不会被防火墙或任何东西阻止,
【问题讨论】:
-
测试了您的脚本,它运行良好...您使用的是代理还是类似的东西?
-
据我所知,我已经尝试使用各种 FTP 客户端(Filezilla、WinSCP 等)进行连接,并且工作正常。我假设 Powershell 会像他们一样实现一个 FTP 连接,所以如果他们工作,powershell 也应该(或者我错了吗?)
-
启用.NET network logging 并向我们展示日志。也向我们展示来自 FTP 客户端的日志(例如 WinSCP)以进行比较。
-
从今天开始出现同样的错误,无法再上传文件了。
标签: powershell ftp powershell-2.0