我正在尝试使用FTP将文件上传到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等从我的电脑,所以它不被防火墙或任何东西,
测试你的脚本,它运行良好......你使用代理或类似的东西? – Avshalom
不是我所知道的,我尝试过使用各种FTP客户端(Filezilla,WinSCP等)的连接,并且它工作正常。我认为Powershell只是实现了与他们一样的FTP连接,所以如果他们工作,powershell也应该(或者我错了吗?) – IGGt
启用[.NET网络日志记录](http://stackoverflow.com/q/9664650/850848)并向我们显示日志。向我们显示来自FTP客户端的日志(例如WinSCP)以供比较。 –