Lors d’une migration d’application vers le format UTF-8 (je rappel qu’il est mieux de commencer directement en UTF-8), il est parfois nécessaire de convertir des fichiers au format UTF-8. Pour cela, sous linux, il existe la commande iconv. Voici un exemple d’utilisation de cette fonction pour convertir un fichier initialement en ISO-8859-1 vers UTF-8 :


iconv -f ISO-8859-1 -t UTF-8 nom_du_fichier_source -o fichier_encode


On peut également mettre en place un traitement plus générique sur tous les fichiers d’une arborescence. Voici un script SH qui permet de traiter plusieurs fichiers dont l’extension est spécifiée (à enregistrer dans un fichier utf8encode.sh par exemple) :


# encodage de depart
encodeFrom='ISO-8859-1'

# encodage voulu
encodeTo='UTF-8'

# application du script sur les fichiers *.php
for filename in ` find . -type f -name *.php`

do
	# sauvegarde du fichier source
	mv $filename $filename.save

	# ecriture du fichier encode
	iconv -f $encodeFrom -t $encodeTo $filename.save -o $filename
done

Partager :


Article(s) sur le même sujet :

  1. Trier les fichiers/répertoires par taille sous linux
  2. Rechercher/Remplacer en MySQL et LINUX
  3. Rechercher une chaine dans les fichiers
  4. Création de CRON sous TYPO3
  5. Script de sauvegarde de site