Examinez le script suivant. Lancez-le, puis expliquez ce qu'il fait. Annotez le script, puis ré-écrivez-le d'une façon plus compacte et plus élégante.
#!/bin/bash MAX=10000 for((nr=1; nr<$MAX; nr++)) do let "t1 = nr % 5" if [ "$t1" -ne 3 ] then continue fi let "t2 = nr % 7" if [ "$t2" -ne 4 ] then continue fi let "t3 = nr % 9" if [ "$t3" -ne 5 ] then continue fi break # Que se passe-t-il quand vous mettez cette ligne en commentaire? # Pourquoi? done echo "Nombre = $nr" exit 0 |
---
Un lecteur a envoyé le code suivant.
while read LIGNE do echo $LIGNE done < `tail -f /var/log/messages` |
---
Analyser Exemple A-11, et ré-organisez-le en suivant un style simplifié et plus logique. Cherchez combien de ses variables peuvent être éliminées et essayez d'optimiser le temps d'éxécution du script.
Modifiez le script pour qu'il accepte n'importe quel fichier texte ASCII pour sa << génération >> initiale. Le script lira les $ROW*$COL premiers caractères, et initialisera les occurences de voyelles comme des cellules << vivantes >>. Indice: assurez-vous de remplacer les espaces dans le fichier d'entrée par des caractères 'tiret bas'.
Précédent | Sommaire | Suivant |
Exercices | Niveau supérieur | Ecriture de scripts |