if [[ -s log.txt ]]; 
Mitä -s tarkoittaa? Tiedän -z tarkoittaa nollakokoista merkkijonoa. En löydä dokumentteja -s: stä.
 Mitä [] tai [[]] tarkoittaa kirjoittaessasi ehtoa if. Olen käyttänyt if ilman [] tai [[]] ja se toimi hyvin. 
Vastaa
 -s -testi palauttaa arvon true, jos 
[…] jos tiedostoa on ja on suurempi kuin nolla
 Tämä on dokumentoitu bash -käyttöoppaassa ja myös test -apuohjelma (testi voidaan kirjoittaa myös if test -s file; then). 
 For [ ... ] ja [[ ... ]], katso:  Bash – jos syntaksin sekaannusta  
Vastaus
 -s TIEDOSTO: – FILE on olemassa ja sen koko on suurempi kuin nolla. 
 [[…]] -osan avulla voidaan testata ehtoa operaattoreiden avulla. Ajattele sitä if-lausuntona. Esimerkissä käytät -s -operaattoria, joka testaa, ettei viitattu tiedosto ole tyhjä.