Montag Mai 09, 2005

Linux: Umlaute hinbiegen

Wer Probleme mit Umlauten unter Linux beim Betrachten von Windows-Dateien hat, sollte sich mal das kleine Shell-Programm recode anschauen. Zuerst braucht man den Wert der Env.-Variable LANG (echo $LANG). Der Wert dürfte z.B. de_DE.UTF8 sein. UTF8 ist also hier das aktuelle Encoding. Mit
recode ms-ansi..UTF-8 <DATEINAME>
kann man die Datei in das richtige Encoding umwandeln.

Linux: Dateinamen ändern

Um z.B. alle Großbuchstaben in Dateinamen in Kleinbuchstaben umzuwandeln, braucht man den Befehl rename. Dieser ist beim Perl-Paket dabei, das i.d.R. installiert ist. Der Befehl
rename 'y/A-Z/a-z/'
benennt alle Dateien innerhalb eines Verzeichnisses um. Macht man das Ganze dann noch mit
find . -type f -exec rename '<REGEX>' {} \;
(<REGEX> ersetzen durch die entsprechende Regular Expression) werden auch die Dateien in den Unterverzeichnissen mitgenommen.

Windows: Freigaben-Übersicht

Mit dem Befehl
rundll32 ntlanui.dll, ShareManage
erhält man unter Windows eine schnelle Übersicht über alle Netzwerkfreigaben.

Windows: NTFS-Rechte mitkopieren

Normalerweise werden beim Kopieren von Dateien mit dem Explorer und NTFS-Filessystem die NTFS-Rechte nicht mitgenommen. Das klappt z.B. nur, wenn man auf der Eingabeaufforderung Verzeichnisse und Dateien mit xcopy kopiert und die entsprechenden Optionen angibt. Wenn man allerdings einen undokumentierten Registry-Key setzt, klappt das auch mit dem Explorer. Unter
Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
muß ein DWORD-Eintrag mit dem Namen
ForceCopyAclwithFile
und vergibt den Wert 1. Anschließend muß man den Rechner durchstarten. Das Ganze klappt unter Windows XP Pro und Windows 2003.