Da dbf a bib e Jabref

Joe Oblivian lavagetto@gmail.com
Dom 6 Nov 2005 08:33:38 CET


Il giorno 03/nov/05, alle ore 20:24, iw9cmd flavio ha scritto:

> #!/bin/bash
> entry=@Article{A_
> file=art.csv
> numlinee=`wc -l $file |cut -d" " -f1`
> i=0
> while [ $i -lt $numlinee ]
>   do
>   i=$(( $i + 1 ))
>   linea=`head -n $i $file|tail -1`
>   author=`echo $linea|tr -d \"|cut -d$ -f1`
>   title=`echo $linea|tr -d \"|cut -d$ -f2`
>   jour=`echo $linea|tr -d \"|cut -d$ -f3`
>   year=`echo $linea|tr -d \"|cut -d$ -f4`
>   vol=`echo $linea|tr -d \"|cut -d$ -f5`
>   pag=`echo $linea|tr -d \"|cut -d$ -f6`
>   echo $entry$i,
>   echo author={$author},
>   echo title={$title},
>   echo journal={$jour},
>   echo year={$year},
>   echo volume={$vol},
>   echo pages={$pag},
>   echo }

intanto riscriviamolo cosi':

awk ' BEGIN {FS = "$"}; { printf "%s %s%s_%s_%s,\n %-10s %s,\n %-10s % 
s,\n %-10s %s,\n %-10s %s,\n %-10s %s,\n %-10s %s,\n %s\n", "@Article 
{", "A",$4,$5,$6, "author=", $1, "title=", $2, "journal=", $3,  
"year=", $4, "volume=", $5, "page=", $6, "}"}' file.csv > file.bib


N.B. ho tolto l'eliminazione dei doppi apici perche' non ho ben  
capito PERCHE' toglierli, dato che a bibtex non danno fastidio AFAIR

Ecco un esempio:

$cat prova.csv
Flavio Barbara$Sucone - come ho imparato a NON fare i soldi 
$Cazzol.Comp.$2003$5$123$
Flavio Barbara$Sucone2 - come ho imparato a perdere i soldi 
$Cazzol.Appl.$1995$456$17$
Flavio Barbara$Sucone al cubo - Come scrivere 23 righe di bash invece  
di una di awk$Lista Palermo$2005$11$4$

Ecco l'effetto del mio comando:

$ awk ' BEGIN {FS = "$"}; { printf "%s %s%s_%s_%s,\n %-10s %s,\n  
%-10s %s,\n %-10s %s,\n %-10s %s,\n %-10s %s,\n %-10s %s,\n %s\n",  
"@Article{", "A",$4,$5,$6, "author=", $1, "title=", $2, "journal=",  
$3, "year=", $4, "volume=", $5, "page=", $6, "}"}' prova.csv


@Article{ A2003_5_123,
author=    Flavio Barbara,
title=     Sucone - come ho imparato a NON fare i soldi,
journal=   Cazzol.Comp.,
year=      2003,
volume=    5,
page=      123,
}
@Article{ A1995_456_17,
author=    Flavio Barbara,
title=     Sucone2 - come ho imparato a perdere i soldi,
journal=   Cazzol.Appl.,
year=      1995,
volume=    456,
page=      17,
}
@Article{ A2005_11_4,
author=    Flavio Barbara,
title=     Sucone al cubo - Come scrivere 23 righe di bash invece di  
una di awk,
journal=   Lista Palermo,
year=      2005,
volume=    11,
page=      4,
}


(per favore usate MUA con font a larghezza fissata in modo da  
apprezzare l'impaginazione dell'output, e' una cosa che ho appena  
imparato e ne sono fiero :-P)

Ovviamente se si vogliono includere altri campi o una sintassi piu'  
complessa bisognera' usare la anche bash o -meglio- il pirl, che  
pero' io non conosco...

TAKLIIII...

Ciao

Joe



Maggiori informazioni sulla lista palermo