Re: [ssfr] Découper un fichier (fortran) en suivant un schéma précis

[ Thread Index | Date Index | More debianworld.org/shellscript-fr Archives ]


Le mardi 5 juin 2012 13:37:34, giggzounet a ecrit :
> Bonjour la liste,
> 
> J'ai un programme fortran contenant de nombreux fichiers sources. Parmi ces
> fichiers sources certains contiennent plusieurs déclarations de
> subroutines: par exemple exemple.F contient:
> subroutine test1()
> 
> end
> 
> subroutine test2()
> 
> end
> 
> ...
> 
> J'aimerais découper ce type de fichiers pour qu'en fin de compte je n'ai
> qu'une subroutine dans chaque fichier source. Et j aimerais faire ça dans
> un script.
> 
> Avez vous des idées ?
> 
> Merci d'avance,
> Guillaume

Bonjour, essayer quelque chose de ce style:

#!/usr/bin/awk -f
BEGIN {
print "Debut du traitement pour ",testrecherche
tableencours="aucune"
}
#Si on tombe sur end, c'est que la routine est finie
/en/ { tableencours="aucune" }
#Affichage du resultat si il est trouve et qu'on est bien dans une routine
{ ligneencours=$0 
if (ligneencours ~ testrecherche && tableencours !="aucune") { print 
tableencours,$0 } } 
#A chaque fois qu'on passe sur une routine, on stocke son nom dans 
tableencours
/subroutine/ { tableencours=$4 }

Enfin voila, cest juste un os a ronger hein... a toi de travailler pour adapter 
ca et creer le script bash qui l'appelera en bouclant sur les noms de routines 
qu'il lui passe en parametre et stocke le resultat dans le fichier du meme nom. 
Ou voir comment faire pour ne pas avoir besoin de cette derniere et que le 
script awk transfere toutes les routines les unes apres les autres dans un 
fichier.

-- 
Bien cordialement, Stephane Ascoet



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/