Как скачать все файлы с именем emp* с помощью curl с FTP-сайта

Как скачать все файлы с именем emp* с помощью curl с FTP-сайта

Как можно загрузить все файлы из каталога FTP-сайта с именем файла типа emp*.

Пожалуйста, предложите.

решение1

Я успешно протестировал этот bashоднострочный код на FTP-зеркале CentOS 6.5, но я сделал его анонимным, чтобы предотвратить злоупотребления:

for i in `curl -i ftp://ftp.example.com/pub/centos/6.5/updates/i386/repodata/ | awk '{print $9}' | grep ^8`; do curl -O http://ftp.eample.com/pub/centos/6.5/${i} ; done

Чтобы объяснить, это идет на ftp-сервер, получает список каталогов (первый curl), передает данные в awk, чтобы вернуть только имена файлов. Наконец, это передается в grep, чтобы соответствовать только тем файлам, которые начинаются с цифры 8, чтобы имитировать ваши emp*требования.

Эти отфильтрованные имена файлов становятся переменной i, и затем я использую простой цикл for для извлечения каждого из них, добавляя их к URL для второго запроса curl. В итоге у меня получились эти два файла:

-rw-r--r--  1 adam  staff      362 11 Jul 13:22 819455e9f840760fcbdccf0283e4324ceabc8512f246e911d39424760ed1729e-primary.xml.gz
-rw-r--r--  1 adam  staff      360 11 Jul 13:22 8e4d3dd261375d31b35b6870e187d841633c68a400e4d11bb7234fea517cdbaa-other.xml.gz

решение2

Если я ничего не упускаю, все, что вам нужно сделать, это перейти в каталог и использовать "mget emp*". Вы можете изменить настройку "prompt" (это команда переключения), если вы не хотите отвечать на каждый файл Y/N.

Связанный контент