On Thu, 3 Oct 2002 08:08:43 +0200
Le Bot Jean-Michel <[EMAIL PROTECTED]> wrote:
> > find . -name \*.HTM -print | awk '{print "mv " $0 " " tolower($0)}' | sh
> >
> >
> Merci pour cette solution qui fonctionne parfaitement.
> Mais j'ai maintenant un autre probl�me, c'est que dans les fichiers html en
> question (il s'agit des fichiers de doc qui accompagnent les donn�es sur les
> CD de l'INSEE, faits avec Micro$ FrontPage) les liens sont parfois �crits <a
> href="Le_fichier.htm"> parfois <a href="LE_FICHIER.HTM"> parfois <a
> href="le_fichier.htm"> ceci pour un m�me fichier. �a ne semble pas poser de
> pb pour Micro$ IE (qui n'est donc pas case sensitive ?), mais �a ne passe pas
> avec Konqueror ou Mozilla.
> Comment faire pour que tous les liens soient sous la forme <a
> href="le_fichier.htm"> (autrement qu'en reprenant tout � la main)?
> Je pr�cise que tous ces fichiers sont dans le m�me r�pertoire.
>
> --
> J e a n - M i c h e l L e B o t
> http://jeanmichel.lebot.free.fr
>
si tu as toujours besoin de ce script, j'ai pris un peu de temps pour t'en mitonner un
et le tester. sans perl, awk, sed ou boa. que du bash ;)
#!/bin/bash
IFS=$(echo -e "\r")
i=$(cat $1)
a=0
while [ $a -lt ${#i} ]
do
b=${i:$a:1}
case ${i:$a:8} in
\<[aA]\ [hH][rR][eE][fF]=*)
echo -n "${i:$a:8}"
a=$((a+8))
while true
do
b=${i:$a:1}
case $b in
\>)
echo -n "$b"
a=$((a+1))
break
;;
[A-Z])
echo -n "$b" | tr
[:upper:] [:lower:]
a=$((a+1))
;;
*)
echo -n "$b"
a=$((a+1))
;;
esac
done
;;
*)
echo -n "$b"
a=$((a+1))
;;
esac
done
echo
pour tester sur un fichier:
script fichier > fichier.new
et si �a te convient, avec tous:
for i in $(commande de recherche de tes fichiers); do script $i > $i.new; done
bye
jipe
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com"