Мне нужно рекурсивно получить структуру файлов / каталогов FTP-сервера, получая только имена файлов (без полезной нагрузки). Можете ли вы помочь мне, как это сделать? (curl , wget , ...).

Результатом должно быть дерево каталогов со всеми файлами с размером 0, но также может подойти текстовый файл со списком файлов / каталогов.

Я пытался использовать .listing сгенерированный wget но он слишком многословен (мне нужно только имя файла с полным путем).

2 ответа2

0

Если вам доступен curlftpfs , используйте его (см. Другой мой ответ). Вы сможете просматривать удаленное дерево каталогов, как если бы оно было локальным.

Такие инструменты, как cp будут работать, поэтому, если вам действительно нужна локальная копия дерева каталогов без полезной нагрузки, используйте эту команду:

cp -R --attributes-only /curlftpfs/mountpoint/ /some/local/path/

(Примечание: --attributes-only не требуется для POSIX, ваш cp может или не может этого понять).

0

Основной подход:

lftp -u user,passwd domain.tld -e 'nlist *; quit' | awk '$5 == 0'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .