Tell me the best way to upload files from ftp?
I need to upload a single file to the ftp server from ubuntu This operation should be performed in a script in non-interactive mode What is the right syntax for ftp
?
I've tried to do it but it doesn't work
$ ftp -u ftp://user:secret@ftp.example.com my-local-file.txt
ftp: Invalid URL `ftp://'
Best Answer
Here's an approach
$ ftp -n <<EOF
open ftp.example.com
user user secret
put my-local-file.txt
EOF
Alternatively, create (or edit) the ~/.netrc file in the home dir of the user that will run the ftp command, give it appropriate perms ( chmod 0600 ~/.netrc
), and add the following:
# ~/.netrc
machine ftp.example.com
login user
password secret
Then omit the login information
$ echo put my-local-file.txt | ftp ftp.example.com
Also, here's how you might do the same thing using curl.
$ curl -T my-local-file.txt ftp://ftp.example.com --user user:secret