Topic "Beginner needs help making simple script to copy via SFTP"

Author Message
danbrown1888
[View user's profile]

Joined: 2013-05-31
Posts: 4
Location: NJ
Hello scripting experts! I'm new to scripting and found this excellent tool today. I've been asked to automate the copying of two files from an SFTP site. I read through the documentation but the syntax is throwing me off a bit. Here is what I have so far:

winscp.com /command "option batch abort" "option confirm off" "open securesite.net" "get examplefile.txt" "exit"

Close but not quite. I also need to pass credentials to authenticate then I need to make sure the files are copied to a specific directory. Could anyone fill in the blanks for me?
Advertisements
danbrown1888
[View user's profile]

Joined: 2013-05-31
Posts: 4
Location: NJ
Figured it out, here is what I did:

.bat file set as scheduled task to call powershell.exe c:\scripts\script.ps1

try
{
# Load WinSCP .NET assembly
[Reflection.Assembly]::LoadFrom("C:\Program Files (x86)\WinSCP\WinSCP.dll") | Out-Null

# Setup session options
$sessionOptions = New-Object WinSCP.SessionOptions
$sessionOptions.Protocol = [WinSCP.Protocol]::Sftp
$sessionOptions.HostName = "ADDRESS.net"
$sessionOptions.UserName = "USERNAME"
$sessionOptions.Password = "PASSWORD"
$sessionOptions.SshHostKeyFingerprint = "ssh-rsa 1024 XX:XX:XX:XX:XX:XX:XX etc"

$session = New-Object WinSCP.Session

try
{
# Connect
$session.Open($sessionOptions)

$localPath = "C:\PATH"
$remotePath = "/Inbox/"
$file = "FILE.bin"

# Format timestamp
$stamp = $(Get-Date -f "yyyyMMddHHmmss")

# Download the file and throw on any error
$session.GetFiles(
($remotePath + $file),
($localPath + $stamp + "." + $file)).Check()
}
finally
{
# Disconnect, clean up
$session.Dispose()
}

exit 0
}
catch [Exception]
{
Write-Host $_.Exception.Message
exit 1
}
umcans
[View user's profile]

Joined: 2013-11-27
Posts: 2
Location: Colombia
Good afternoon all, I am a Beginner on making scripts to copy via SFTP, i found this article with an explanation on what i need, sorry for my unawareness on this kind of process. It is possible for you to help me and clarify a little be more on how i can create a simple script that allow me to connect as an automatic task using a batch file that can do the following task>

* Open the WinSCP on a specific date and time
* Select one of the SFTP accounts that i have configure on my WinSCP client (WinSCP.exe)
example (username@hostname)
* Authenticate the user account (username@hostname) and password (*********)
* Select a specific path where the files are upload it (this folder is encrypted by the connection key that we create to setup the connection -xxxxpriv.ppk-)
C:\ftproot\folder\Live\in
* Copy the files on this location and save it in to a different local path on the server
C:\Users\username\Desktop\Temp
* Save a log of what files was copied and the time that this task was executed
* Disconnect of the running session


More and less this is what i need and i see on the structure of the script that you refer on your message but as i said before it is not clear for me because i`m not familiar with this process.


Thanks in advance for your help and support.
Best regards,


Angel
martin
[View user's profile]
Site Admin
Joined: 2002-12-10
Posts: 24993
Location: Prague, Czechia
umcans wrote:
Good afternoon all, I am a Beginner on making scripts to copy via SFTP, i found this article with an explanation on what i need, sorry for my unawareness on this kind of process. It is possible for you to help me and clarify a little be more on how i can create a simple script that allow me to connect as an automatic task using a batch file that can do the following task>

We do not provide script writing service here. Please try yourself and ask specific questions on problems you encounter.
_________________
Martin Prikryl
umcans
[View user's profile]

Joined: 2013-11-27
Posts: 2
Location: Colombia
prikryl wrote:
umcans wrote:
Good afternoon all, I am a Beginner on making scripts to copy via SFTP, i found this article with an explanation on what i need, sorry for my unawareness on this kind of process. It is possible for you to help me and clarify a little be more on how i can create a simple script that allow me to connect as an automatic task using a batch file that can do the following task>

We do not provide script writing service here. Please try yourself and ask specific questions on problems you encounter.



Hi, thanks for your advice, i was able to complete the Script and i was trying to get help from the experts on the software or any recommendation.
Advertisements

You can post new topics in this forum






Search Site

What is WinSCP?

It is award-winning SFTP client, SCP client, FTPS client and FTP client integrated into one software program for file transfer to FTP server or secure SFTP server. [More]

And it's free!

Donate

About donations

$9   $19   $49   $99

About donations

Recommend

WinSCP Privacy Policy

WinSCP License