Descàrrega simultània de fitxers¶
Volem descarregar alhora tres fitxers ubicats al portal disk.sample.cat
.
Els fitxers es troben a les URLs:
Utilitzeu la comanda
curl
per descarregar un fitxer. La sintaxi de la comanda seria «curl -O
url», on url cal substituir-lo per la url que volem.
Feu una comanda que faci la descàrrega al mateix temps dels tres fitxers.
Amb la comanda predefinida de
bash
,time
poden esbrinar el temps que triga una comanda en executar-se entre d’altres temps (temps d’ús de la CPU, temps del sistema operatiu). La sintaxi és «time
comanda». On comanda és la de l’apartat anterior dins d’un subshell. Assegureu-vos que la comanda acaba amb unwait
per tal de poder comptar el temps correctament.Escriviu dues línies de comandes per poder comparar la millora de temps de fer-ho alhora (comanda de l’apartat a) amb el temps d’una comanda que ho faci seqüencialment.
Solució¶
(curl -O https://disk.sample.cat/samples/pdf/sample-a4.pdf & \ curl -O https://disk.sample.cat/samples/pdf/sample-images-fit.pdf & \ curl -O https://disk.sample.cat/samples/pdf/sample-multilingual-text.pdf) ; wait
url1=https://disk.sample.cat/samples/pdf/sample-a4.pdf url2=https://disk.sample.cat/samples/pdf/sample-images-fit.pdf url3=https://disk.sample.cat/samples/pdf/sample-multilingual-text.pdf time ((curl -O $url1 & curl -O $url2 & curl -O $url3); wait) time (curl -O $url1 ; curl -O $url2 ; curl -O $url3; wait)
Per claredat, hem posat les urls amb variables i així veure millor la composició de comandes en una línia.