Hallo, ich habe Heute 9.1 installiert und bin im großen ganz zufrieden, nur habe ich ein großes Problem mit dieser Textumstellung.
ich nehme mal an, die meisten, die auf SuSE 9.1 updaten werden das Problem haben ihre bestehen Daten von latin1 auf UTF-8 zu konvertieren. Leider haben die SuSE-Buben noch keinen Eintrag in die SDB gesetzt deshalb. Das Konvertieren der Dateinamen ist mit dem folgenden Kommando ist kein Problem.
convmv --notest -r -f latin1 -t utf-8
Leider klappt das bei mir nicht, immer wenn ich diesen Befehl eingebe wird nur die optionserklärung von convmv dargestellt aber die Dateinamen werden nicht umgewandelt. Was mache ich falsch? Ich habe den Befehl als user und als root in einem Testverzeichnis eingegeben leider immer ohne erfolg. Weis jemand rat?
Bleibt nur noch das Problem mit den Dateiinhalten. Ich habe hier mehrere Verzeichnisse mit Text-Dateien und die will ich natürlich nicht per Hand anpassen. Mit "iconv" ist es möglich den Inhalt einer Datei umzuwandeln:
iconv -f latin1 -t utf-8 datei.txt >> xor-datei.txt
Meine Frage: Ist hier jemand gut genug im Shell-Skipting, der ein kleines Skript schreiben kann, das automatisch mit "iconv" alle Dateien (in allen Unterverzeichnissen) konvertiert? Leider reichen meine Kenntnisse nicht aus. Sicher wäre so ein kleines Skript für viele auf dieser Liste interessant.
Hallo,
ungetestet in perl :) Verwendung auf eigene Gefahr !
#!/usr/bin/perl $indir = "/texte/";
use File::Path;
chdir ("$indir"); foreach $file (glob("*.txt")) { $execme = "# iconv -f latin1 -t utf-8 $file >> $file_new"; open (iconver, "|$execme"); close(iconver);
}
Die # hab ich zu meiner Absicherung gesetzt :-)
Bin leider noch ziemlich unerfahren was skripte und konsolen Arbeit betrifft wie und wo muss ich das skrip eingeben damit es funktionert. gruß Mario