Intereting Posts
GRUB2 не отображается на мониторе HDMI Можно ли скопировать всю пользовательскую среду в другую машину во FreeBSD? Создание каталогов: с разрешениями Как сохранить псевдоним команды eval $ (other_comand) Как можно изменить эффект apt-get build-dep <package>? Как установить Rocks Cluster с помощью Wi-Fi (Intel Wireless N) Есть ли макет программы, которая использует процессор на нескольких ядрах? raid 1 / LVM на уровне каталогов (aka mknodding a directory) Каков наилучший инструмент для автоматизации 32-64-битных библиотек для Unix и Windows, создающих программное обеспечение на C ++, воспроизводимое пользователями и машинами? ksh не может cp из местоположения с пространством в нем? UDEV Run Script не может прочитать устройство без рута Файловая система xenix (sysv) не поддерживается с ядра 2.1.21 Переименуйте текущий файл в vim Самый быстрый способ объединить много файлов в один (tar czf слишком медленный) Как открыть каталог и сохранить код в нем Gerris в Linux?

Как указать имя пользователя и пароль в команде ftp?

Я хочу автоматизировать вызов ftp в сценарии оболочки. Если я напечатаю

$ftp somehost.domain.com 

Мне предлагается ввести имя пользователя и пароль. Я хочу указать это имя пользователя и пароль как часть вызова ftp. Страница man для ftp говорит, что я могу выдать команду пользователя в приглашении ftp, но я хочу войти в ftp за один раз. Это возможно? Я не вижу ничего в флагах для ftp. Я вижу, что опция -s дает мне возможность указывать некоторые команды ftp, когда у меня есть запрос ftp, но мне нужно дать имя пользователя для получения приглашения …

Используйте файл .netrc в своем домашнем каталоге.

Содержание:

 # machine <hostname> login <username> password <password> machine ftp.example.com login myuser password $ecret 

Если это то, что вы делаете программно, напишите .netrc перед подключением, удалив его, когда закончите.

Вы также можете написать сценарий оболочки ac, используя здесь документ, который будет выглядеть примерно так:

 #!/bin/sh HOST='someftpserver.com' USER='username' PASSWD='password' FILES='*.txt' # ftp -nv $HOST>$FTPLOG <<END_SCRIPT quote USER $USER quote PASS $PASSWD cd somedirectory binary mget $FILES quit END_SCRIPT