Elaborazione dei dati in Shell
Susan Sun
Data Person
curl:
Verifica installazione di curl:
man curl
Se curl NON è installato, vedrai:
curl command not found.
Istruzioni complete: https://curl.haxx.se/download.html.
Se curl è installato, la console apparirà così:

Premi Enter per scorrere.

Premi q per uscire.
Sintassi base di curl:
curl [option flags] [URL]
L'URL è obbligatorio.
curl supporta anche HTTP, HTTPS, FTP e SFTP.
Per l'elenco completo delle opzioni:
curl --help
Esempio:
Un singolo file è disponibile su:
https://websitename.com/datafilename.txt
Usa l'opzione facoltativa -O per salvare il file col nome originale:
curl -O https://websitename.com/datafilename.txt
Per rinominare il file, usa -o minuscola + nuovo nome:
curl -o renameddatafilename.txt https://websitename.com/datafilename.txt
Spesso un server ospita più file dati con nomi simili:
https://websitename.com/datafilename001.txt
https://websitename.com/datafilename002.txt
...
https://websitename.com/datafilename100.txt
Uso dei caratteri jolly (*)
Scarica ogni file su https://websitename.com/ che inizia con datafilename e finisce con .txt:
curl -O https://websitename.com/datafilename*.txt
Proseguendo con l'esempio:
https://websitename.com/datafilename001.txt
https://websitename.com/datafilename002.txt
...
https://websitename.com/datafilename100.txt
Uso del parser di globbing
Questo scarica in sequenza tutti i file da datafilename001.txt a datafilename100.txt.
curl -O https://websitename.com/datafilename[001-100].txt
Proseguendo con l'esempio:
https://websitename.com/datafilename001.txt
https://websitename.com/datafilename002.txt
...
https://websitename.com/datafilename100.txt
Uso del parser di globbing
Incrementa tra i file e scarica ogni N-esimo file (es. datafilename010.txt, datafilename020.txt, ... datafilename100.txt)
curl -O https://websitename.com/datafilename[001-100:10].txt
curl ha due opzioni utili in caso di timeout durante il download:
-L Reindirizza l'URL HTTP se si verifica un errore 300.
-C Riprende un trasferimento interrotto prima del completamento.
Mettendo tutto insieme:
curl -L -O -C https://websitename.com/datafilename[001-100].txt
-L -C -O va bene)Elaborazione dei dati in Shell