Question

How to recursively copy files from one server to another via FTP from the command line?

Hi all,

I have a website hosted on another server and I want to transfer the content over to my droplet. The problem is that I only have FTP access to the old server and I don’t want to download all of the files locally on my PC and then upload then to the droplet.

Is there a way to transfer the files from my old server to my Droplet directly via FTP from the command line?

Thanks a lot!

Subscribe
Share

sftp user@server then ‘get -r source-directory [target-directory]’


Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Accepted Answer

Hello,

The last time I had to do that I used wget. First you need to SSH to your droplet, cd to the directory that you would like to store the files at and use wget with the following arguments:

wget -mbr --user="FTP_USER@example.com" --password="YOUR_PASSWORD" "ftp://ftp.example.com/PATH_TO/YOUR_FILES/*"

The arguments:

  • -m - This option turns on recursion and time-stamping, sets infinite recursion depth and keeps FTP directory listings.
  • -b - Go to background immediately after startup. If no output file is specified via the -o, output is redirected to wget-log.
  • -r - Recursively

Hope that this helps! Regards, Bobby