[ssfr] bibtex2csv en bash? |
[ Thread Index |
Date Index
| More debianworld.org/shellscript-fr Archives
]
- To: Shell List <shellscript-fr@xxxxxxxxxxxxxxx>
- Subject: [ssfr] bibtex2csv en bash?
- From: Alexandre <neonoe123321@xxxxxxxxx>
- Date: Wed, 6 May 2009 12:57:26 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:subject :message-id:reply-to:mime-version:content-type:content-disposition :content-transfer-encoding:user-agent; bh=iffrJS8fCb/uMRhHVR7XW7rquMtWIdpkjvbMXjxW6ek=; b=pwdw66XYqDhM4dLHX6hAUzDguYPG+VDvMsgUiNlW5AEShJ8nM3vQ4uWVFnYuLEzbgC VNsja8Mv5RLatZm+rstpa1rhC3vcdWfiGhHUlFuygIpiQa5lmy8dpGka9QkTV/FJH3RP oHQkaGHBymEQewWLNx2cSign4E43YN3EFV4a0=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:subject:message-id:reply-to:mime-version:content-type :content-disposition:content-transfer-encoding:user-agent; b=f1L3UbuGE2kgLh0s+wCeqzKdjjdGS1d9N5gX7DB9AhVjq9PnNYrBmC1ak5MBUaHEBz 5mLT+fm5b4npBk357EDsum/VW9lXVo9cpybKOMTADBnc17rtPbtly71gcXImts7zc4Pt s2F+luom4gtx7Zp2Z3my0qV9LhgFqEgHZkr9M=
Bonjour,
j'ai un fichier.bib dont je dois transformer les différents champs en
fichier csv.
En gros (grosse schématisation), le problème est le suivant. Le
fichier est de la forme:
Séparateur1 texteO
Séparateur2 texte1
Séparateur3 texte2
Séparateur4 texte3
Séparateur1 texte0
Séparateur2 texte1
Séparateur3 texte2
Séparateur4 texte3
Séparateur1 texte0
Séparateur2 texte1
Séparateur3 texte2
Séparateur4 texte3
Ainsi, le spérateur1 (en vérité "@{") délimite chaque champ que je
le voudrais sur chaque ligne. Et chaque ligne comporte le texte des
séparteurs correspondants ; "title =" par exemple. Le fichier csv final
devrait ressembler à ça:
text0;text1;text2; text3
text0;text1;text2; text3
text0;text1;text2; text3
Je pensais le faire en awk mais le field separator fonctionne ligne par
ligne.
J'ai essayé en perl avec Text::BibTeX mais je préfèrerais si possible,
quelque chose de plus simple en bash (apparemment, il ne reconnaît pas
tous les champs et je ne sais pas comment le contrôler...).
Si vous avez une idée, je suis preneur.
Merci de votre aide.
--
Alexandre Delanoë