The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Скрипт FTP Transfer и его Error code"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Скрипт FTP Transfer и его Error code"  
Сообщение от Arpo email(ok) on 06-Ноя-07, 09:32 
Здравия всем....
:)

Есть скрипт:
_______________________________________
#!/bin/sh

HOST='127.0.0.1'
USER='root'
PASSWD='toor'

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
cd $DEST
dir
quit
END_SCRIPT
_________________________________________
Надо получить Error code. Тоесть если задача выполнена зделать что-то, а если нет напечатать что не получилось. Пробовал так:
_________________________________________
FTP_ER=$?
if [ $FTP_ER -ne 0 ]
then
     echo "Some Error"      
else
     echo "Complited succsessfully"      
fi
__________________________________________
Так не работает.

Спасибо за помощ.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Скрипт FTP Transfer и его Error code"  
Сообщение от angra (ok) on 08-Ноя-07, 06:06 
А используемый вами ftp вообще возвращает коды отличные от 0 и если да то в каких случаях? Обычно указывается в man. Причем неудачное завершение команды cd или dir врядли повлияет на код возврата.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Скрипт FTP Transfer и его Error code"  
Сообщение от Arpo email(ok) on 08-Ноя-07, 08:27 
>А используемый вами ftp вообще возвращает коды отличные от 0 и если
>да то в каких случаях? Обычно указывается в man. Причем неудачное
>завершение команды cd или dir врядли повлияет на код возврата.

На самом деле кусок скрипта где производится соеденение по фтп воспринимается интерпритатором как одна комманда (обратите внимание на <<END_SCRIPT и END_SCRIPT).

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
cd $DEST
dir
quit
END_SCRIPT

Меня интересует код возврата от исполнения жсего набора комманд заклыученниь в "END_SCRIPT",
будь то невозможность соеденится с сервером или неправельный юзер/пасс.
А что касается возвращает ли комманда какой либо код, то насколько я знаю код возвращает любая комманда: 0 если удачно и больше 0 если неудачно.

З.Ы. На самом деле я решил проблему при помощи Perl скрипта исползуя модуль Net:FTP, но все же проблема актуальна.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Скрипт FTP Transfer и его Error code"  
Сообщение от angra (ok) on 10-Ноя-07, 13:31 
Я в курсе что-такое document here и как он работает :)
Если не сможет соединится с сервером или авторизоваться, то _возможно_ вернет не нулевой код возврата. Если же не выполнится cd или dir, то скорее всего код возврата будет 0. Но это лишь предположение основанное на поведении других утилит, в тех man ftp что я видел нет описания кодов возврата, возможно даже что всегда возвращается 0, так как команда по сути предназначена для интерактивной работы, а не для скриптов. Правильный подход к проблеме имеется в ncftp, который я использую и вам рекомендую.

P.S. если уж знаешь perl, то зачем вообще возится с шеллом?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Скрипт FTP Transfer и его Error code"  
Сообщение от Arpo email(??) on 11-Ноя-07, 14:16 
>[оверквотинг удален]
>Если не сможет соединится с сервером или авторизоваться, то _возможно_ вернет не
>нулевой код возврата. Если же не выполнится cd или dir, то
>скорее всего код возврата будет 0. Но это лишь предположение основанное
>на поведении других утилит, в тех man ftp что я видел
>нет описания кодов возврата, возможно даже что всегда возвращается 0, так
>как команда по сути предназначена для интерактивной работы, а не для
>скриптов. Правильный подход к проблеме имеется в ncftp, который я использую
>и вам рекомендую.
>
>P.S. если уж знаешь perl, то зачем вообще возится с шеллом?

Что касается ncftp, на тупом сервере где это должно работат его нет, а то и я про него знаю и использую. Установить не могу, шеф не пускает, говорит ничего лишнего, поди обьясни....
А что касается знаний Perl, все тот же шеф, говорит Shell это часть системы, а перл это стороняя программа:). Проста тут было легче поскольку перл всетаки был установлен в системе:)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Скрипт FTP Transfer и его Error code"  
Сообщение от angra (ok) on 13-Ноя-07, 15:09 
>А что касается знаний Perl, все тот же шеф, говорит Shell это часть системы, а перл это стороняя программа

Ну тогда нужно писать на чистом sh и не использовать gnu расширения различных утилит. Сервера, где нет bash и, например, tar/grep/curl имеет другой набор опций мне встречались, а вот серверов без базового perl еще ни одного не видел.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру