Re: [#!/fr] Automatisation de documents industries

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Patrick Proniewski
Date:  
À: La liste francophone des scripts shell
Sujet: Re: [#!/fr] Automatisation de documents industries
On 22 oct. 2011, at 09:45, Yves PETRONIN wrote:

> Par ailleurs mes derniers essais m'ont donnée l'idée (qui aurait due être triviale!) de concaténer mes fichiers en me basant sur le contenu du fichier "main" . Ce n'était pas le cas jusque là, mais une sorte de bricolage.
>
> Il s'agit juste de récupérer les lignes qui commencent par \input et de récupérer les noms des fichiers qui figurent entre les accolades, comme ci dessous:
>
> configfile.sty
> Part_A1
> Part_A2
> Part_00
> Part_01
> Part_02
> Part_03
> ......



Donc tu cherches à remplacer la ligne "\input{Part_1}" du fichier "main" par le contenu du fichier "Part_1", c'est bien cela ?


> J'ai trouvé ce qui suit, mais je suppose que c'est très très perfectible...
>
> awk '/%---BEGIN-MAIN---/,/%---END-MAIN---/' Chemin-du-fichier | awk '/\input{/' | awk -F "{" '{$1="" ; print $2}' | awk -F "}" '{print $1}' > /main-recup2.txt


Oui, effectivement, c'est perfectible :)
Pour récupérer le nom des fichiers :

awk '/%---BEGIN-MAIN---/,/%---END-MAIN---/ { if (substr($1,1,6)=="\\input") { split($1,a,/[{}]/); print a[2]} }' Chemin-du-fichier

(c'est fait un peu à la va-vite).

patpro_______________________________________________
archives :
http://listes.patpro.net/list/sshfr.fr.html
http://listes.patpro.net/mailman/listinfo/script_shell_fr