ich hab ein Scipt, welches Dateien und Unterverzeichnisse auf auf Windows Rechner angeschlossene USB-Sticks kopiert.
Dazu wird der USB Stick per Windows Freigabe von dem Linux Rechner (SuSE 10) per cifs gemounted.
Vor dem Kopieren wird das Zeilverzeichnis in .old umbenannt. Das alte .old Verzeichnis soll vorher gelöscht werden.
Dies mach ich bisher mit rm -rf $OLDDIR.
Nun kommt es vor, dass ein USB Stick defekt ist und es dabei Dateien mit merkwürdigen Namen gibt.
Der rm Job gibt dann folgendes aus:
Code: Select all
rm: cannot remove directory `/mnt/slot/DE/deu/1\002tg\032302252303226&.303246\023303250': No such file or directory
rm: cannot remove directory `/mnt/slot/DE/deu/303266302252^302252a302273s303244.' j': No such file or directory
rm: cannot remove `/mnt/slot/DE/deu/302273F3422252409,=2302263.7\030342225243': No such device or address
rm: cannot remove `/mnt/slot/DE/deu/v\027303237303215\005303241303264\006.ug303240': No such device or address
rm: FATAL: cannot ensure `/mnt/slot/DE' (returned to via ..) is safe: No such device or addressTeilweise ist der Linux Server zu dieser Zeit abgestürzt. Ein Hardwaredefekt (der ggf. auch hierfür verantwortlich ist) ist allerdings noch nicht überprüft.
Meine Frage:
Die Shell scheint teilweise die merkwürdigen Zeichen als Befehl und Pipes zu verstehen, was ungeahnte Effekte haben kann.
Wie könnten solche Dateien/Verzeichnisse erkannt und rausgefilter werden?
Vielen Dank und Gruß,
Nathan
