Skip to content

Instantly share code, notes, and snippets.

@chardcastle
Created June 1, 2011 22:48
Show Gist options
  • Save chardcastle/1003539 to your computer and use it in GitHub Desktop.
Save chardcastle/1003539 to your computer and use it in GitHub Desktop.
Upload files (recursive) via powershell
## Automate FTP uploads
## Go to destination
cd C:\Test
$location = Get-Location
"We are here: $location"
## Get files
$files = Get-ChildItem -recurse
## Get ftp object
$ftp_client = New-Object System.Net.WebClient
$ftp_address = "ftp://user:pass@adress:/home/chardcastle/test"
## Make uploads
foreach($file in $files)
{
$directory = "";
$source = $file.DirectoryName + "\" + $file;
if ($File.DirectoryName.Length -gt 0)
{
$directory = $file.DirectoryName.Replace($Location,"")
}
$Directory += "/";
$FtpCommand = $ftp_address + $directory + $file
$uri = New-Object System.Uri($ftp_command)
"Command is " + $uri + " file is $source"
$ftp_client.UploadFile($uri, $source)
}
@hostingrajamani
Copy link

This script is not working and wasted 1 hour, Use this script, https://www.kittell.net/code/powershell-ftp-upload-directory-sub-directories/ (it just works great) for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment