Diskuze: Linux - Bash stahovaní souboru - wget
Zobrazeno 5 zpráv z 5.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Tímto příkazem zjistíš počet řádků.
cat $file | wc -l
Tímto zase velikost v bytech.
stat --format="%s" $file
Můžeš si tedy uložit data do nějakého souboru a pak se v ifu zeptat, kolik tam je řádků, nebo jak je veliký a podle toho se nějak zachovat.
Když se ten soubor 'špatně stáhne' nevyhodí při tom wget nějakou chybu? Pokud jo tak bych si zkusil pohrát s parametrem --tries, který nastavuje kolikrát se to má zkoušet (default je 20, 0 znamená že to bude zkoušet dokud se to nepovede)
wget --tries=0 soubor_ke_stazeni....
Děkují, toto jsem už vyřešíl.
filesize=$(stat -c '%s' soubor)
A přes while furt dokola, až bude větší než zadam.
Mam však problem s while.
S jedním souborem to dam ale.
Stahnu si třeba 3 takove soubory
filesize1=$(stat -c '%s' soubor)
filesize2=$(stat -c '%s' soubor)
filesize3=$(stat -c '%s' soubor)
Přes while chci furt dokola, pokud alespon jeden s ních nebude větší jak třeba 1 KB
#!/bin/bash
wget foo.tgz &> /dev/null
if [[ "$?" != 0 ]]; then
echo "Error downloading file"
else
echo "Success"
fi
Ještě můžeš zkusit kontrolovat návratový kód z wget.
Zobrazeno 5 zpráv z 5.