2015-12-04 3 views
1

Я попытался найти простую регистрационную информацию для подключения ftp в моем сценарии bash. Я попытался использовать wput и grep, чтобы получить результат для индикатора выполнения. Есть ли способ сначала проверить данные для входа? Я думаю, что wput не поддерживает это ...Проверьте данные входа в систему FTP с помощью bash

Есть ли кто-нибудь, кто мог бы помочь мне с хорошим простым решением?

Спасибо!

ответ

1

Вы можете использовать Wget для проверки соединения:

wget --spider --tries=1 --user=login --password=pass ftp://your-ftp.com/ 
if [ $? -ne 0 ]; then 
    echo "Filed to connect" 
fi 

Или вы можете использовать передачи файлов команду:

echo 'exit' | ftp ftp://login:[email protected]/ 
if [ $? -ne 0 ]; then 
    echo "Filed to connect" 
fi 

Примечание: отправка команды/конвейеру 'Выход' на FTP, чтобы заставить его выйти из интерактивного режима.

+0

Я использую второе предложение с lftp, спасибо! – user3006625

+0

Я попытался запустить команду в фоновом режиме, 'echo 'exit' | ftp ftp: // login: [email protected]/ & 'Как я могу получить возвращаемое значение? – user3006625

+0

@ user3006625 - возвращаемое значение (код выхода) хранится в $? переменная. Вы можете сделать: 'echo $?' –