Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- try
- {
- # Load WinSCP .NET assembly
- Add-Type -Path "WinSCPnet.dll"
- # Setup session options
- $sessionOptions = New-Object WinSCP.SessionOptions -Property @{
- Protocol = [WinSCP.Protocol]::Sftp
- HostName = "example.com"
- UserName = "user"
- Password = "mypassword"
- SshHostKeyFingerprint = "ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx:xx..."
- }
- $session = New-Object WinSCP.Session
- try
- {
- # Connect
- $session.Open($sessionOptions)
- # Download files
- $transferOptions = New-Object WinSCP.TransferOptions
- $transferOptions.TransferMode = [WinSCP.TransferMode]::Binary
- $transferResult =
- $session.GetFiles("/home/user/*", "d:download*", $False, $transferOptions)
- # Throw on any error
- $transferResult.Check()
- # Print results
- foreach ($transfer in $transferResult.Transfers)
- {
- Write-Host "Download of $($transfer.FileName) succeeded"
- }
- }
- finally
- {
- # Disconnect, clean up
- $session.Dispose()
- }
- exit 0
- }
- catch [Exception]
- {
- Write-Host "Error: $($_.Exception.Message)"
- exit 1
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement