по-перше, зробіть бекап тих файлів - щось може піти не так.
по-друге,
$ for file in /home/user/public_html/* ; do if [ -f "$file" ] ; then iconv -c -f windows-1251 -t utf-8 "$file" -o "$file.utf" && move -f "$file.utf" "$file" || echo "ERROR: $file" ; fi ; done
по-третє, це обробить лише файли, які знаходяться прямо у цій директорії, якщо треба вкладені - треба буде робити через find.