LINUX.ORG.RU

Скрипт supload на Bash. Возвращает ли он код ошибки?


0

1

Здравствуйте!

Есть вот такой официальный скрипт для заливки файлов на облачное хранилище Selectel:

https://github.com/selectel/supload/blob/master/supload.sh

Его описание тут:

http://habrahabr.ru/company/selectel/blog/168249/

Смотрю я на него, и не могу понять. Возвращает ли данный скрипт код ошибки, если что-то пошло не так в функции upload?

По коду видно, что в функции upload вроде как предусмотрен выход через

return 1

Однако вызов функции upload делается несколько раз в цикле (там перебираются отправляемые файлы). И этот return 1 может пропасть при обработке очередного файла.

Таким образом, внешний скрипт никак не сможет понять, были ли ошибки при выполнении данного скрипта. Например, ошибка «[!] Error with calculate file hash, skip uploading $src» никак не повлияет на код возврата скрипта supload. Правильно я понял код?

★★★★★

Скрипт не смотрел сразу ответил.

В bash у функций return предусмотрен как раз для возврата флага правильности завершения некой операции. Так что если они там есть и в них там все ок то логика вида

./some_crap && echo "ok" || echo "not ok"

будет обрабатываться правильно

init_6 ★★★★★ ()
Ответ на: комментарий от init_6

Там же смотри, есть цикл.

Первый раз вызов upload может завершиться

return 1

а второй раз просто

return

Вопрос. Какой код возврата в этом случае будет у скрипта?

Xintrea ★★★★★ ()
Ответ на: комментарий от Xintrea

Какой код возврата в этом случае будет у скрипта?

Чтоб правильно фунциклировало должно быть return {0,1} иначе либо оно ненужно и именно так и предусмотрено и будет рапортовать только о чем то одном.

init_6 ★★★★★ ()
Ответ на: комментарий от Xintrea

Вопрос. Какой код возврата в этом случае будет у скрипта?

0

Chumka ★★★ ()

Скрипт имеет два режима работы: загрузка одного файл и рекурсивная загрузка файлов.

При загрузке одного файла код ошибки 0 - если все ОК и не 0 если загрузка не удалась.

При рекурсивной загрузке код возврата всегда 0, не считая ошибок аутентификации.

sirkonst ()
Ответ на: комментарий от sirkonst

Ага, вот этого я и боялся...

Наверно придется добавить выход из скрипта с ненулевым кодом при первой же ошибке. А то даже знать не будешь что у тебя при закачке ошибки были.

Xintrea ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.