Come scaricare tutti i file con nome emp * usando curl da un sito FTP


2

Come posso ottenere tutti i file scaricati da una directory del sito FTP con nome file come emp *.

Per favore, suggerisci


1
Benvenuto in SuperUser! Che cosa hai provato? Dovresti provare prima qualcosa e includerlo nel tuo post originale, con tutti i riferimenti che hai usato.
10

Risposte:


2

Ho testato bashcon successo questo liner con un mirror FTP CentOS 6.5, ma l'ho reso anonimo per prevenire abusi:

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

Per spiegare, questo va al server ftp, ottiene l'elenco delle directory (primo arricciatura), convoglia i dati in awk per restituire solo i nomi dei file. Infine, questo viene convogliato in grep per corrispondere solo a quei file che iniziano con il numero 8 per simulare il tuo emp*requisito.

Quei nomi di file filtrati diventano la variabile ie quindi uso un semplice ciclo per recuperarli aggiungendoli all'URL per la seconda richiesta di arricciatura. Ho finito con questi due file:

-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

0

Se non mi manca qualcosa, tutto ciò che devi fare è inserire nella directory e utilizzare "mget emp *". Potresti voler cambiare l'impostazione "prompt" (è un comando di attivazione / disattivazione) se non vuoi rispondere ad ogni file S / N.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.