LINUX.ORG.RU
решено ФорумMobile

Как из скрипта с помощью ftpput выгрузить несколько файлов

 , ,


0

1

Синтаксис команды: ftpput -опции файл1 файл2 файл3

Заранее количество файлов и их имена не известны. Возможно как то перенаправить вывод ls на вход ftpput?

ftpput - oппции * - не работает.


В баше можешь развернуть массив из имен файлов через пробел "${arr1[@]}.

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

В баше можешь развернуть массив из имен файлов через пробел

Не так, через первый символ $IFS

vodz ★★★★★
()

ftpput - oппции * - не работает.

А ls работает? Не сходится. Покажи как делаешь и что выводится.

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

Почему не так?

find . -name ‘*.svx’ -exec ftpput bla-bla.org –user=bla –pass=bla-bla {} \;

или так (один вызов ftpput на всё)

find . -name ‘*.svx’ -exec ftpput bla-bla.org –user=bla –pass=bla-bla {} +

Твой вариант вариант сломается на файлах с пробелами в именах, особенно с пробелами в начале и в конце.

И зачем тут basename?

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

Спасибо. Я кое что новое понял благодаря Вашему комментарию. )

AlCat
() автор топика
Ответ на: комментарий от legolegs

И зачем тут basename?

Оно может ему и нужно и подсказано старшим товарищем, но в таком виде уж точно сломается для пробелов в середине :)

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

Так какой самый грамотный вариант? :)

legolegs вам дал правильный вариант, но ещё и задал вопрос.

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