I am trying to get some files from my ftp server from the command line. I am using wget to download the whole folder at once. The command is:
wget -m ftp://username::/path/to/folderBut the problem is, my password contains the '@' symbol. Hence The command becomes
wget -m ftp://username:foo@:/.. due to which, wget tries to resove as the host, which it is not able to. Please help!
3 Answers
Rather than the user:pass@hostname syntax, use switches. From wget --help:
--ftp-user=USER set ftp user to USER.
--ftp-password=PASS set ftp password to PASS.Example:
wget -m --ftp-user=username --ftp-password=foo@bar ftp:// 0 You can also URL encode the username and/or password. The @ symbol becomes %40
For example:
wget -m ftp://username:foo@:/.. can be written as
wget -m ftp://username::/.. I realize this question has been solved long ago, but I saw this in the corner of my eye and thought I'd throw in a solution (this is actually useful, because it should work with anything that uses or supports using URIs, such as FileZilla or a web browser.)
wget -m --ftp-user=username --ftp-password=foo@bar ftp:// -O /path_to_file/dest_file_name
1