Old web projects files convert, from ISO-8859-2 to UTF-8 charset

Címkék: charset, web, ubuntu, bash
Létrehozva: 2012. június 28. 11:10
Előfordul, szerencsére ritkán, hogy egy régi oldalt forrását kell továbbfejleszeni mely még windows-os stílusban ascii kódolási fájlokkal íródott. Ezzel a kis parancssoros eszközzel gyorsan átalakíthatjuk fájlainkat a modernebb és praktikusabb UTF8-ra.

Futattaható (converter.sh) fájlunk tartalma:

#!/bin/bash
EXTENSIONS="ini inc php tpl sql html js css htm"
cd $1
function convertFiles {
  F=`find . -name "*.$1"`
  for I in $F ; do
    UTF=`file -i $I | grep 'iso-8859' | wc -l`
    if [ ${UTF} = 1 ] ; then
	echo `file -i $I`
      iconv -f ISO-8859-2 -t UTF-8//TRANSLIT "$I" -o "$I"
    fi
  done
}
 
for I in $EXTENSIONS ; do
  convertFiles $I
done

Csak egy elérési útvonal paramétert vár, példa a futatásra:

# converter.sh /path/to/dir/