[linux] wat is er fout in deze loop?

Joost van Baal-Ilić joostvb-nllgg op mdcc.cx
Do Okt 10 12:11:01 CEST 2024


#!/bin/bash
for ((i=0;i<i18;i++))
do
if $i lt 10; then sudo unzip -l p00$i.zip | grep meter; fi
if $i gt 9; then sudo unzip -l p0$i.zip | grep meter; fi
done


On Thu, Oct 10, 2024 at 10:02:26AM +0200, Julien Michielsen via Linux wrote:
> Ik wil een for-loop schrijven, maar krijg een foutmelding.
>  
> Mijn script: (met naam "forloop") waarmee ik wil zoeken of er "meter" staat in de file
>  
> #!/bin/bash
> for ((i=0;i<i18;i++))
> do
> if $i lt 10 then sudo unzip -l p00$i.zip | grep meter
> if $i gt 9 then sudo unzip -l p0$i.zip | grep meter
> done
>  
> en wanneer ik dan het commando "forloop" geef:
>  
> forloop
> /home/julien/com/forloop: line 6: syntax error near unexpected token `done'
> /home/julien/com/forloop: line 6: `done '
> Verwijder ik de "done" aan het eind van het script, omdat het onnodig lijkt, dan
>  
> forloop
> /home/julien/com/forloop: line 6: syntax error: unexpected end of file
>  
> dus done moet er wel staan.  Wat is er fout in mijn script?
>  
> Dank voor de moeite,
> Julien
>  


Meer informatie over de Linux maillijst