Dateien von Linux nach Win verschieben und doppelte Dateien automatisch umbenennen.

johnix

johnix

Jungspund
Also unter Linux können Namen von Dateien Zeichen in gross oder Kleinschrift haben und werden dennoch als unterschiedliche Dateien erkannt. Unter Windows aber nicht. Wie kann ich also solche Dateien so umbenennen das keine Problem mit Windows entstehen.

Vielen Dank schon mal für die Mühe.
 
Z.B. mit einem Shellscript, der mit "test -e $DATEI" auf dem Zieldateisystem feststellt, ob eine gleichnamige Datei schon vorhanden ist.

Es gibt übrigens noch mehr Probleme mit Dateinamen auf verschiedenen Dateisystemen.
 
Vielleicht auch mit 'rsync --backup' - idealerweise testet es dateisystemspezifisch, ob eine Datei bereits vorhanden ist und kopiert dann die zweite Datei mit anderer Schreibweise als backup. Ich wollte es ausprobieren, aber Linux scheint auch bei vfat kein Problem damit zu haben, zwischen A.text und a.text zu unterscheiden, von daher bin ich mir nicht sicher, ob die Ursache Deines Problemes so stimmt.
 
@tgruene
Teilweise sind da aber mehr Dateien mit "gleichem" Namen. Und wenn es schon beim Test nicht klappt, was soll ich als Linux Unwissender dann klären? Ja Windows selber kann Dateien wie A.text und a.text nachher unterscheiden, aber die Dateien muss man dann per Hand suchen und umbenennen. Die Ursache meines Problems stimmt schon so, wie von mir beschrieben.
 
@Spröde
Tja, ich bin kein Linux Könner, dass ich mir Shellscripte selbst schreiben könnte. Da bin ich sehr weit von entfernt.

Ja es gibt noch andere Probleme beim Übertragen von LinuxDateien nach WindowsFormat, aber die habe ich schon in einem anderen Beitrag erklärt bekommen.
 
Du koenntest klaeren, was Dein Problem ist. Vielleicht kannst Du ein paar Beispiele nennen, was Du tust, und was dann passiert - z.B. dass Du Dateien von A nach B kopierst und dann in B bestimmte Dateien nicht mehr vorhanden, weil ueberschrieben. So habe ich Dein Problem zumindest verstanden, konnte es jedoch nicht reproduzieren.

Hast Du es mal mit rsync probiert, oder ist Dir dessen Syntax nicht vertraut genug, um es helfend zu bedienen?
 
Wie kann ich also solche Dateien so umbenennen das keine Problem mit Windows entstehen.
interessant wäre auch noch zu wissen, was Du genau unter Dateien verstehst... Bilder? Videos? Textfiles? Musik? Worddokumente? *.php-Files?

Oder hast Du Probleme mit der Dateierweiterung unter Linux <---> Windows? Ja, das kann durchaus ein wenig verwirrlich sein, denn Linux kennt (vereinfacht gesagt) eigentlich gar keine Dateiendungen. Bitte jetzt nicht schlagen; - habe ich aus meinem Linuxlerngang gelernt...

Gruss B-52
 
Die Dateien heissen z.B.; Datei.txt, DATEI.txt, DateI.txt, Datei.TXT. Ob das Bilder, Videos, Textfiles etc. sind ist völlig irrelevant. Alle Dateien sollen erhalten bleiben und die doppelt benamten Dateien sollten mit Zahlen erweitert werden.

Alle anderen Teile der Übertragung von Linux (ext3) nach Windows (ntfs) sind schon in anderen Beiträgen geklärt worden.
 
Ob das Bilder, Videos, Textfiles etc. sind ist völlig irrelevant
Einspruch Euer Ehren. Handelt es sich z.B. um komplexe *.php Files, welche untereinander "verknüpft" sind, ist dies alles andere als irrelevant, wenn die Datei einfach mal so mit einer Zahl ergänzt wird. Desshalb auch meine Frage. Bei Bildern, Musik und Videos ist es tatsächlich irrelevant. Beim Kopieren werden identische Files erwähnt und müssten dann manuell umbenennt werden. gthumb ist eine elegante Lösung, Mediendateien massenweise auf einen Rutsch umzubenennen. Somit wird das Problem der Doppelbenennung behoben....
 
Zuletzt bearbeitet:
Wenn sich die Dateien alle in einem Verzeichnis befinden, koenntest Du etwas versuchen wie
Code:
#> /bin/ls | sort -f > datei_namen
#> awk '{if (current !=tolower($1)) {current=tolower($1); counter=1} ; print ("mv -iv ",  $1, tolower($1)"_"(counter)); ++counter}' datei_namen > mv_liste
#> sh mv_liste
ohne Gewaehr!
 
@B-52 Php Files sind nicht dabei deswegen schrieb ich das es irrelevant ist. Es sind leider nicht nur Mediendateien. Mit GThumb umbennen ist aber sehr umständlich da man die umzubenenndenden Dateien erst markieren muss also per Hand zusammen suchen muss.
 
@tgruene Ich hatte eher damit gerechnet das es schon etwas Linux eigenes und erprobtes gäbe denn ein Code ohne Gewähr.
 
Erprobe es, dann gibt es das - so ist das mit Linux ;-)
 
@tgruene Blinde Aktion schadet mir nur. Und ich suche eben erbrobte Möglichkeiten die nicht von Laien wie mir erstellt wurden.-)
 
Indem Du das ganze nicht-blind ausprobierst, sondern z.B. in einem Testverzeichnis, lernst Du und entwickelst Dich vom Laien weiter. "Sich trauen" ist in der Regel eine gute Sache, und mit ein bisschen Nachdenken kann man das auch nichtdestruktiv.
 
@tgruene Oh ich würde das blind ausführen da ich nicht mal genau genug verstehe was der Code denn da so macht. Und ob ich in in ein Script schreiben muss oder einzeln in die Kommanozeile. Ausserdem gibst Du ja nicht mal eine Gewähr auf die Funktion des Codes wie sollte ich einen Fehler korrigieren können. Und unter Zwang lerne ich eh nix. Sorry aber das ist keine Hilfe.-(
 
... da ich nicht mal genau genug verstehe was der Code denn da so macht. Und ob ich in in ein Script schreiben muss oder einzeln in die Kommanozeile.

Sieh Dir einfach zuerst an, was der Code tut. Das "#>" in tgruenes Code bedeutet, dass die Befehle einzeln eingetippt (kopiert) werden.

Code:
ls | sort -f > datei_namen
Es wird eine Dateiliste "datei_namen" erzeugt.

Code:
awk '{if (current !=tolower($1)) {current=tolower($1); counter=1} ; print ("mv -iv ",  $1, tolower($1)"_"(counter)); ++counter}' datei_namen > mv_liste
Hier wird ein Script erzeugt, der die einzelnen Dateien mit dem Befehl "mv" umbenennen wird, wenn Du ihn ausführst.Bis jetzt ist mit Deinen Dateien noch nichts passiert.

Code:
less mv_liste
Jetzt siehst Du Dir den erzeugten Script an. Die mv-Befehle sind leicht zu verstehen. Wenn Du damit zufrieden bist, führst Du den Script aus:

Code:
sh mv_liste
Erst jetzt werden die Dateien umbenannt.
 

Ähnliche Themen

Keine grafische Oberfläche (Debian Installation)

Welches Linux/Unix für ehemaligen OSX Nutzer?

Batch-Datei Alternative unter Linux

Sambaserver im Netzwerk nicht sichtbar

Script zur Korrektur einer E-Book Datei

Zurück
Oben