Загрузка файлов с использованием FTP в PowerShell Scripts Fail
Я использую PowerShell Scripts для загрузки файлов по FTP. Сценарии, которые я использую, следующие:
$File = "C:\test\test01.txt"
$ftp = "ftp://MyUsername:MyPassword@MyHostName/"
"ftp url: $ftp"
$webclient = New-Object System.Net.WebClient
$uri = New-Object System.Uri($ftp)
"Uploading $File..."
$webclient.UploadFile($uri,$File)
Но когда я запускаю сценарии, я получаю следующие ошибки:
Exception calling "UploadFile" with "2" argument(s): "The requested URI is invalid for this FTP command."
At C:\FTP.ps1:11 char:1
+ $webclient.UploadFile($uri,$File)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : WebException
Версия Powershell, которую я использую, следующая:
Major Minor Build Revision
----- ----- ----- --------
3 0 -1 -1
Кто-нибудь знает, как решить эту проблему?
Спасибо
1 ответ
Возможным объяснением может быть то, что ваше имя пользователя / пароль содержит специальные символы, которые недопустимы в действительном URI (например, @
или же :
).
Вместо этого вы должны установить свои учетные данные, используя System.Net.NetworkCredential
Смотрите этот ответ для справки