[PLUTO-tech]
< da PLUTO PD> script per ripulire un doc xsl-fo mal formattato
Gian Uberto Lauri
GianUberto.Lauri a eng.it
Mar 30 Mar 2004 20:12:05 CEST
Seguendo un'indicazione esplicita di Andrea Brugiolo che mi
sculacciava a ragione per aver inviato il messaggio solo sulla lista
patavina:
>>>>> "AB" == Andrea Brugiolo <andrea a pluto.it> writes:
AB> Perche' tutte queste belle cose, come tanti altri quesiti tecnici che
AB> vedo passare sempre piu` di frequente, non le postate su pluto-tech
AB> invece che su pluto-pd, in modo che le possa vedere e all'occorrenza
AB> intervenire anche tutto il resto del mondo invece che solo i padovani?
AB> Eh? Perche'...? Perche'........? PERCHE`?????? :-)
ricopio questo messaggio:
>>>>> "LCD" == Luca Campo Dall'Orto <lucagraph a libero.it> writes:
LCD> Ciao a tutti, ho un problemino: devo togliere dai tag <> di un
LCD> documento xsl-fo i doppioni degli attributi text-decoration:
LCD> cioč all'interno delle due <> vorrei rimanesse solo il primo tag,
^^^
Intenti attributo, vero ?
LCD> e che l'eventuale seconda ripetizione, con argomento anche
LCD> diverso, venisse cancellata. Tutto questo č possibile con uno
LCD> script da shell?
Intendi dire passare da una cosa come
<tag xids text-decoration="prima decoration" ulla yalla bagulla="cipolla" text-decoration="seconda" ueppppa yag>
a una cosa come
<tag xids text-decoration="prima decoration" ulla yalla bagulla="cipolla" ueppppa yag>
in modo automatico ?
Si puo` fare.
#-----------------------------------[inizio]-------------------
#!/bin/bash
#
# *.xsl e` un qualcosa che ti elenca tutti i file da modificare,
for i in *.xsl
do
cp $i $i".tmp"
# Il trucco e` fare una regexp con due parti, il prima (\1) e il dopo (\2)
# l'attributo ripetuto.
sed -e 's/\(<[^>]*text-decoration="[^>]*"[^>]*\)text-decoration="[^>]*"\([^>]*>\)/\1\2/g' < $i".tmp" > $i
rm $i".tmp"
done
# Nota, la regexp e` stata sviluppata in 10 minuti sotto Emacs e poi
# provata con sed.
#-----------------------------------[fine]---------------------
Attenzione: ho testato solo la regexp, non il resto dello script.
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Maggiori informazioni sulla lista
pluto-tech