Вот один из подходов:
$ ftp -n <<EOF
open ftp.example.com
user user secret
put my-local-file.txt
EOF
В качестве альтернативы, создайте (или отредактируйте) файл ~/.netrc в домашнем каталоге пользователя, который запустит команду ftp, задайте ему соответствующие права доступа (chmod 0600 ~/.netrc
) и добавьте следующее:
# ~/.netrc
machine ftp.example.com
login user
password secret
Затем опустите регистрационную информацию, как в:
$ echo put my-local-file.txt | ftp ftp.example.com
Кроме того, вот как вы можете сделать то же самое, используя curl:
$ curl -T my-local-file.txt ftp://ftp.example.com --user user:secret