Glam Prestige Journal

Bright entertainment trends with youth appeal.

I would like to FTP the contents of a directory, but I can't seem to find the right way to use a wildcard. It seems like this would be a common thing to do; is my whole approach wrong?

The command is

ftp -s:"C:\Scripts\ftp01" ftpserver.domain.com

The script that is called is below. Updated per billinkc.

username
password
ascii
cd "/destinationfolder"
lcd "C:\Backup"
mput *.bak
close
quit

The script starts, no files are copied and the FTP session remains open.

230 User username Logged in Successfully
ftp> ascii
200 TYPE Command OK A
ftp> cd "/destinationfolder"
250 Directory successfully changed to "/destinationfolder"
ftp> lcd "C:\Backup"
Local directory now C:\Backup.
ftp> mput *.bak
mput 9829980.bak? close
mput 6406766.bak? quit
ftp>
ftp>

Conclusion

I needed to add the flag to suppress the PROMPT command:

ftp -i -s:"C:\Scripts\ftp01" ftpserver.domain.com

8 Answers

Before issuing the mput command, issue a prompt command to disable Interactive Mode. Once that's off it shouldn't ask you to confirm each file for the mput (or an mget).

2

Try inserting the line prompt n just before the mput line

I've never tried using the pathname for local folders, but I have done it by changing the local directory (lcd):

username
password
ascii
cd "/destinationfolder"
lcd Backup
mput *.bak
close
quit

Use the mput command to put multiple files.

2

If you have administrator rights, you can install ncftpput. It is easy to use and great for recursive FTP uploads. The switch for recursive transfer is -R.

The software is included in most Linux distributions. For Windows it is installable with Cygwin.

As Tim Haegele mentioned, ncftp does this very smoothly on Linux, if you are able and willing to install it:

sudo apt-get install ncftp
ncftp -R ftpserver.domain.com . /Scripts/ftp01

This is the script that I used and that worked for me.

For ftp1.bat (script):

ftp -i -s:\tmp\ftp.txt

For ftp.txt (script):

Open ip
username
password
prompt
lcd C:\YourFolder\YourFolder
binary
cd /DestinationFolder
prompt
mput *.bak
cd ..
disconnect
quit

Maybe there're parts that aren't necessary but I'm putting it as it worked for me, hope it helps

You can try the mirror command of lftp with --include option

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy