Monday, March 16, 2009

How to automate FTP uploads from the Windows Command Line

First, you will have to create a file called fileup.bat in your windows directory, or at least inside some directory included in your path. You can use the "path" command to see what the current path is.

Inside the batch file, paste the following:
@echo off
echo user MyUserName> ftpcmd.dat
echo MyPassword>> ftpcmd.dat
echo bin>> ftpcmd.dat
echo put %1>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat SERVERNAME.COM
del ftpcmd.dat


Now replace the MyUserName, MyPassword and SERVERNAME.COM with the correct values for your ftp server.

The batch file uses the "echo" command to send text to the ftp server as if you had typed it. In the middle of the file you can add extra commands,

echo cd /pathname/>>ftpcmd.dat

To call this batch file, call the batch file using the fileup.bat name that we gave it, and pass in the name of a file as the parameter. You don't have to type the .bat part of the filename to make it work, either.

Example:
> fileup FileToUpload.zip
Connected to ftp.ambadyinfotec.com.
220 Microsoft FTP Service
ftp> user myusername
331 Password required for myusername.
230 User myusername logged in.
ftp> bin
200 Type set to I.
ftp> put FileToUpload.zip
200 PORT command successful.
150 Opening BINARY mode data connection for FileToUpload.zip
226 Transfer complete.
ftp: 106 bytes sent in 0.01Seconds 7.07Kbytes/sec.
ftp> quit

No comments:

Post a Comment

Error (MMC has detected an error in a snap-in and will unload it) when you try to launch Windows Firewall with Advanced Security on Local Computer / Server.

Error (MMC has detected an error in a snap-in and will unload it) when you try to launch Windows Firewall with Advanced Security on Local Co...