Les commandes "shell bash" sont trop belles !
Quand on administre des serveurs, ou quand on programme on a souvent des petits problèmes à résoudre en relation avec un certain nombre de fichiers ou une crackée de paramètres.
Et franchement la connaissance du shell est un outil qui fait gagner beaucoup de temps.
Un des problèmes qui vient souvent c'est un truc du style :
pour chacun de ces trucs
fait ça avec le truc...
Et la boucle for est salvatrice, Ainsi je veux lancer un script ou une commande avec un paramètre différent qui se trouve être dans un fichier ListeParam.txt :
Et voilà ! mon script va se lancer autant de fois qu'il y a de lignes dans le fichier ListeParam.txt
Simple, efficace, juste BÔ !
J'avais par exemple cette liste de noms de 352 tables SQL ListeTables.txt
et un script php qui devait analyser la table sous MSSQL et généer du code pour la créer sous PostgreSql GenPgSqlCreate.php
et bien avec un rapide :
j'ai pu génèrer mes 352 fichiers avec du code sql pour migrer ma base sur PostgreSql qui se trouve être le plus beau des SGBDR qui soit (surtout avec son extension géographique Postgis)
Et franchement la connaissance du shell est un outil qui fait gagner beaucoup de temps.
Un des problèmes qui vient souvent c'est un truc du style :
pour chacun de ces trucs
fait ça avec le truc...
Et la boucle for est salvatrice, Ainsi je veux lancer un script ou une commande avec un paramètre différent qui se trouve être dans un fichier ListeParam.txt :
for i in `cat ListeParam.txt` ; do (./MonScript.sh $i) ; done
Et voilà ! mon script va se lancer autant de fois qu'il y a de lignes dans le fichier ListeParam.txt
Simple, efficace, juste BÔ !
J'avais par exemple cette liste de noms de 352 tables SQL ListeTables.txt
et un script php qui devait analyser la table sous MSSQL et généer du code pour la créer sous PostgreSql GenPgSqlCreate.php
et bien avec un rapide :
for i in `cat ListeTables.txt` ; do (php GenPgSqlCreate.php $i>$i.sql) ; done
j'ai pu génèrer mes 352 fichiers avec du code sql pour migrer ma base sur PostgreSql qui se trouve être le plus beau des SGBDR qui soit (surtout avec son extension géographique Postgis)
Commentaires