Gibt es für PC (Windows, Linux) die Möglichkeit und entsprechende Software, Dateisysteme (FAT32) auf unterster Ebene zu lesen und evtl. zu manipulieren? Es gibt MP3-Player-Module, die Dateien in der Reihenfolge, wie sie im Dateisystem abgelegt sind, abspielen - die Dateinamen werden vermutlich gar nicht gelesen. Ich möchte prüfen, ob das Kopieren nummerierter Dateien die entsprechende Reihenfolge im Dateisystem zur Folge hatte. Ich habe vor längerem mal mit irgendeiner "Arduino" Bibliothek für SD-Karten experimentiert, und ich glaube, dort wurden die Dateien auch in der low-level Reihenfolge eingelesen...
Heisst wohl "disk editor". "WinHex" scheint das zu können, was ich suche: Tools > Open Disk. Kombiniert Dateibrowser und Hex-Editor. Zu jeder Datei/Verzeichnis werden die Sektoren angezeigt und auch die Rohdaten in Hex.
Info schrieb: > Gibt es für PC (Windows, Linux) die Möglichkeit und entsprechende > Software, Dateisysteme (FAT32) auf unterster Ebene zu lesen und evtl. zu > manipulieren? Ja. Allerdings nur für root/Admin und natürlich darf das Volume nicht (auto-) gemounted sein, wenn man am OS vorbei am FS manipulieren will. > Es gibt MP3-Player-Module, die Dateien in der Reihenfolge, wie sie im > Dateisystem abgelegt sind, abspielen - die Dateinamen werden vermutlich > gar nicht gelesen. > Ich möchte prüfen, ob das Kopieren nummerierter Dateien die > entsprechende Reihenfolge im Dateisystem zur Folge hatte. Nicht notwendigerweise. Das hängt davon ab, was zuvor im Directory-File stand. Nur bei einem "frischen" FAT-Filesystem kannst du davon ausgehen, dass die Einträge in der Reihenfolge in den Directory-Files landen, in der sie geschrieben werden. Allerdings: d.h. nicht, dass das notwendigerweise auch die alphabetische Sortierreihenfolge wäre. Sondern es hängt natürlich dann davon ab, wer da schreibt. Wenn der nicht alphabetisch sortiert, bevor er schreibt, wird's auch bei einem frischen FS nicht in der "richtigen" Reihenfolge im FS landen.
Wichtig ist, dassss schon beim Kopieren die Reihenfolge stimmt! Es ist ein großer Unterschied ob Du nach Datum Dateinamen auswählst zum Kopieren!!! Man könnte auch ein Image 1:1 machen wenn man Durchblick hat. Info schrieb: > Ich möchte prüfen, ob das Kopieren nummerierter Dateien die > entsprechende Reihenfolge im Dateisystem zur Folge hatte. dir /s > dir1.txt dir /s > dir2.txt schafft Deine Einträge in jeweils eine Datei, die Du ansehen und vergleichen könntest.
Info schrieb: > Ich möchte prüfen, ob das Kopieren nummerierter Dateien die > entsprechende Reihenfolge im Dateisystem zur Folge hatte. ls -f gibt sie dir in "unsortierter" Reihenfolge aus, was wohl die sein sollte, wie die Einträge im Verzeichnis selbst stehen. Die Option ist von Posix in dieser Form standardisiert, sodass sie auf allen zeitgemäßen Unixen verfügbar ist. Wenn ich mir das mal so für eine Karte ansehe, die mal in einer Kamera und danach in einem Mac war:
1 | % ls -lf /mnt |
2 | total 521 |
3 | drwxr-xr-x 1 root wheel 32768 Jan 1 1980 ./ |
4 | drwxr-xr-x 29 root wheel 35 Sep 1 21:10 ../ |
5 | drwxr-xr-x 1 root wheel 32768 Sep 17 2013 AVF_INFO/ |
6 | drwxr-xr-x 1 root wheel 32768 Sep 17 2013 PRIVATE/ |
7 | drwxr-xr-x 1 root wheel 32768 Sep 17 2013 DCIM/ |
8 | drwxr-xr-x 1 root wheel 32768 Sep 17 2013 MP_ROOT/ |
9 | drwxr-xr-x 1 root wheel 32768 Sep 17 2013 MISC/ |
10 | -rwxr-xr-x 1 root wheel 4096 Sep 23 2013 ._.Trashes* |
11 | drwxr-xr-x 1 root wheel 32768 Jul 2 2017 LOST.DIR/ |
12 | drwxr-xr-x 1 root wheel 32768 Mar 14 2017 .Trashes/ |
13 | drwxr-xr-x 1 root wheel 32768 Apr 9 2014 .LOST.DIR/ |
14 | drwxr-xr-x 1 root wheel 32768 Nov 2 2016 .TemporaryItems/ |
15 | -rwxr-xr-x 1 root wheel 4096 Sep 23 2013 ._.TemporaryItems* |
16 | -rwxr-xr-x 1 root wheel 293 Sep 23 2013 .apdisk* |
17 | -rwxr-xr-x 1 root wheel 4096 Sep 23 2013 ._.apdisk* |
18 | drwxr-xr-x 1 root wheel 32768 Mar 13 2014 .Trash-1000/ |
19 | drwxr-xr-x 1 root wheel 32768 Jun 30 2017 .fseventsd/ |
… und dann den Hexdump dazu:
1 | 00400000 41 56 46 5f 49 4e 46 4f 20 20 20 13 00 64 25 47 |AVF_INFO ..d%G| |
2 | 00400010 31 43 31 43 00 00 25 47 31 43 03 00 00 00 00 00 |1C1C..%G1C......| |
3 | 00400020 50 52 49 56 41 54 45 20 20 20 20 10 00 64 26 47 |PRIVATE ..d&G| |
4 | 00400030 31 43 31 43 00 00 26 47 31 43 67 05 00 00 00 00 |1C1C..&G1Cg.....| |
5 | 00400040 44 43 49 4d 20 20 20 20 20 20 20 10 00 00 2a 47 |DCIM ...*G| |
6 | 00400050 31 43 ef 48 00 00 07 9c ef 48 6f 05 00 00 00 00 |1C.H.....Ho.....| |
7 | 00400060 4d 50 5f 52 4f 4f 54 20 20 20 20 10 00 00 2a 47 |MP_ROOT ...*G| |
8 | 00400070 31 43 31 43 00 00 2a 47 31 43 71 05 00 00 00 00 |1C1C..*G1Cq.....| |
9 | 00400080 4d 49 53 43 20 20 20 20 20 20 20 10 00 00 2a 47 |MISC ...*G| |
10 | 00400090 31 43 31 43 00 00 2a 47 31 43 73 05 00 00 00 00 |1C1C..*G1Cs.....| |
11 | 004000a0 41 2e 00 5f 00 2e 00 54 00 72 00 0f 00 0c 61 00 |A.._...T.r....a.| |
12 | 004000b0 73 00 68 00 65 00 73 00 00 00 00 00 ff ff ff ff |s.h.e.s.........| |
13 | 004000c0 5f 7e 31 20 20 20 20 20 54 52 41 22 00 3e 72 73 |_~1 TRA".>rs| |
14 | 004000d0 37 43 ff 4a 00 00 72 73 37 43 49 47 00 10 00 00 |7C.J..rs7CIG....| |
15 | 004000e0 4c 4f 53 54 20 20 20 20 44 49 52 10 00 00 09 a9 |LOST DIR.....| |
16 | 004000f0 e2 4a e2 4a 00 00 09 a9 e2 4a 8c 84 00 00 00 00 |.J.J.....J......| |
17 | 00400100 41 2e 00 54 00 72 00 61 00 73 00 0f 00 25 68 00 |A..T.r.a.s...%h.| |
18 | 00400110 65 00 73 00 00 00 ff ff ff ff 00 00 ff ff ff ff |e.s.............| |
19 | 00400120 54 52 41 53 48 45 7e 31 20 20 20 12 00 3e 72 73 |TRASHE~1 ..>rs| |
20 | 00400130 37 43 37 43 00 00 72 73 37 43 48 47 00 00 00 00 |7C7C..rs7CHG....| |
21 | 00400140 41 2e 00 4c 00 4f 00 53 00 54 00 0f 00 fe 2e 00 |A..L.O.S.T......| |
22 | 00400150 44 00 49 00 52 00 00 00 ff ff 00 00 ff ff ff ff |D.I.R...........| |
23 | 00400160 4c 4f 53 54 7e 31 20 20 44 49 52 10 00 00 f4 3c |LOST~1 DIR....<| |
24 | 00400170 89 44 89 44 00 00 f4 3c 89 44 83 47 00 00 00 00 |.D.D...<.D.G....| |
25 | 00400180 42 6d 00 73 00 00 00 ff ff ff ff 0f 00 9a ff ff |Bm.s............| |
26 | 00400190 ff ff ff ff ff ff ff ff ff ff 00 00 ff ff ff ff |................| |
27 | 004001a0 01 2e 00 54 00 65 00 6d 00 70 00 0f 00 9a 6f 00 |...T.e.m.p....o.| |
28 | 004001b0 72 00 61 00 72 00 79 00 49 00 00 00 74 00 65 00 |r.a.r.y.I...t.e.| |
29 | 004001c0 54 45 4d 50 4f 52 7e 31 20 20 20 12 00 17 e2 79 |TEMPOR~1 ....y| |
30 | 004001d0 37 43 37 43 00 00 e2 79 37 43 4c 47 00 00 00 00 |7C7C...y7CLG....| |
31 | 004001e0 42 74 00 65 00 6d 00 73 00 00 00 0f 00 92 ff ff |Bt.e.m.s........| |
32 | 004001f0 ff ff ff ff ff ff ff ff ff ff 00 00 ff ff ff ff |................| |
33 | 00400200 01 2e 00 5f 00 2e 00 54 00 65 00 0f 00 92 6d 00 |..._...T.e....m.| |
34 | 00400210 70 00 6f 00 72 00 61 00 72 00 00 00 79 00 49 00 |p.o.r.a.r...y.I.| |
35 | 00400220 5f 7e 31 20 20 20 20 20 54 45 4d 22 00 17 e2 79 |_~1 TEM"...y| |
36 | 00400230 37 43 ff 4a 00 00 e2 79 37 43 4d 47 00 10 00 00 |7C.J...y7CMG....| |
37 | 00400240 41 2e 00 61 00 70 00 64 00 69 00 0f 00 18 73 00 |A..a.p.d.i....s.| |
38 | 00400250 6b 00 00 00 ff ff ff ff ff ff 00 00 ff ff ff ff |k...............| |
39 | 00400260 41 50 44 49 53 4b 7e 31 20 20 20 22 00 18 e2 79 |APDISK~1 "...y| |
40 | 00400270 37 43 ff 4a 00 00 e2 79 37 43 53 47 25 01 00 00 |7C.J...y7CSG%...| |
41 | 00400280 41 2e 00 5f 00 2e 00 61 00 70 00 0f 00 c9 64 00 |A.._...a.p....d.| |
42 | 00400290 69 00 73 00 6b 00 00 00 ff ff 00 00 ff ff ff ff |i.s.k...........| |
43 | 004002a0 5f 7e 31 20 20 20 20 20 41 50 44 22 00 18 e2 79 |_~1 APD"...y| |
44 | 004002b0 37 43 ff 4a 00 00 e2 79 37 43 52 47 00 10 00 00 |7C.J...y7CRG....| |
45 | 004002c0 41 2e 00 54 00 72 00 61 00 73 00 0f 00 e4 68 00 |A..T.r.a.s....h.| |
46 | 004002d0 2d 00 31 00 30 00 30 00 30 00 00 00 00 00 ff ff |-.1.0.0.0.......| |
47 | 004002e0 54 52 41 53 48 2d 7e 31 20 20 20 10 00 00 2c 58 |TRASH-~1 ...,X| |
48 | 004002f0 6d 44 6d 44 00 00 2c 58 6d 44 c3 48 00 00 00 00 |mDmD..,XmD.H....| |
49 | 00400300 41 2e 00 66 00 73 00 65 00 76 00 0f 00 da 65 00 |A..f.s.e.v....e.| |
50 | 00400310 6e 00 74 00 73 00 64 00 00 00 00 00 ff ff ff ff |n.t.s.d.........| |
51 | 00400320 46 53 45 56 45 4e 7e 31 20 20 20 12 00 3f 55 4f |FSEVEN~1 ..?UO| |
52 | 00400330 de 4a de 4a 07 00 55 4f de 4a 65 3b 00 00 00 00 |.J.J..UO.Je;....| |
53 | 00400340 e5 69 00 74 00 65 00 5f 00 74 00 0f 00 82 65 00 |.i.t.e._.t....e.| |
54 | 00400350 73 00 74 00 00 00 ff ff ff ff 00 00 ff ff ff ff |s.t.............| |
55 | 00400360 e5 2e 00 66 00 69 00 6c 00 65 00 0f 00 82 6d 00 |...f.i.l.e....m.| |
56 | 00400370 61 00 6e 00 67 00 65 00 72 00 00 00 5f 00 77 00 |a.n.g.e.r..._.w.| |
57 | 00400380 e5 49 4c 45 4d 41 7e 31 20 20 20 20 00 64 66 aa |.ILEMA~1 .df.| |
58 | 00400390 e2 4a e2 4a 00 00 66 aa e2 4a 00 00 00 00 00 00 |.J.J..f..J......| |
59 | 004003a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| |
Könnte wohl passen, insbesondere die ersten Einträge sind recht markant.
:
Bearbeitet durch Moderator
Info schrieb: > Ich möchte prüfen, ob das Kopieren nummerierter Dateien die > entsprechende Reihenfolge im Dateisystem zur Folge hatte Das ist weitgehend überflüssig - wenn alles auf einmal kopiert wurde, stehen sie in der "richtigen" Reihenfolge, also wie nacheinander kopiert (Ob das die Absicht war ist eine ganz andere Frage). Wenn öfters mal wieder was kopiert wurde, tun sie das mit ziemlicher Sicherheit nicht. Einzige Möglichkeit: alles löschen und dann in einem Rutsch kopieren. Georg
Georg schrieb: > Das ist weitgehend überflüssig - wenn alles auf einmal kopiert wurde, > stehen sie in der "richtigen" Reihenfolge, Ganz so sehe ich das unter Windows nicht. Wenn Du sie im Explorer nach Datum sortiert hast, werden sie dann auch in dieser Reihenfolge kopiert. Du kannst sie aber auch nach Alphabet oder Größe sortieren oder rückwärts.
Hallo Jörg W., Jörg W. schrieb: > … und dann den Hexdump dazu: > 00400000 41 56 46 5f 49 4e 46 4f 20 20 20 13 00 64 25 47 |AVF_INFO > ..d%G| > 00400010 31 43 31 43 00 00 25 47 31 43 03 00 00 00 00 00 > |1C1C..%G1C......| mit welchem Befehl erzeugt man denn den schönen Hexdump?
Info schrieb: > Ich möchte prüfen, ob das Kopieren nummerierter Dateien die > entsprechende Reihenfolge im Dateisystem zur Folge hatte. Mach doch einfach ls -U dann siehst Du die Reihenfolge.
Georg schrieb: > Einzige Möglichkeit: alles löschen und dann in einem Rutsch kopieren. Es gibt Software (Foldersort fällt mir spontan ein) die kann man sich aber auch fix mal selber scripten die das sortiert: Du gehst rekursiv durch alle Verzeichnisse durch und für jedes Verzeichnis schiebst Du mit mv alle Dateien in der gewünschten Reihenfolge in ein neues leeres Verzeichnis und dann löscht Du das alte und benennst das neue um oder so ähnlich (gibt meherere ähnliche Strategien die alle das gewünschte Ergebnis liefern, bin mir jetzt auch nicht sicher ob man oben oder unten im Baum anfangen soll, das müsste man sich mal in ner ruhigen Minute genau überlegen). Da Umbenennen und "Verschieben" auf dem selben Datenträger keine Daten bewegt sondern nur Verzeichniseinträge ändert geht dieser Vorgang auch auf ner randvollen 2TB-Platte am USB2 binnen 5 Sekunden und alles ist wieder so sortiert wie Du es in Deinem Sortierscript vorgegeben hast. Zumindest mit FAT funktioniert das, ob das auch mit modernen Dateisystemen geht die vielleicht andere Strukturen haben um Verzeichniseinträge zu speichern ist fraglich. Aber ein Mediaplayer der so blöd ist daß er sich auf die Sortierung der Dateienträge verlassen muss stammt garantiert noch aus der FAT-Zeit und kann eh nichts anderes.
:
Bearbeitet durch User
Hallo Bernd K., Bernd K. schrieb: > Aber ein Mediaplayer der > so blöd ist daß er sich auf die Sortierung der Dateienträge verlassen > muss stammt garantiert noch aus der FAT-Zeit und kann eh nichts anderes. leider nein! :) Bei meiner vergeblichen Recherche nach "AAC+ v2"-tauglichen mp3-Playern bin ich auf dieses Problem gestoßen. Such' einfach nach "ruizu mp3 player sort directory".
Peter M. schrieb: > "ruizu mp3 player sort directory" Wie gesagt: Im einfachsten Fall einfach Foldersort oder Drivesort drauf loslassen und nach 5 Sekunden ist alles auf dem Datenträger wieder alphabetisch sortiert. Die Vorgehensweise mit Verschieben auf dem selben Datenträger kann einen komplett neuen Verzeichnisbaum in jeder gewünschten Sortierung aufbauen ohne eine einzige Datei tatsächlich umkopieren zu müssen. Da brauchst Du auch kein Low-Level-API um direkt auf den Strukturen rumzuwerkeln, Du nutzt einfach in geschickter Weise die Auswirkungen der vorhandenen Userland-Befehle aus wenn man sie in der richtigen Reihenfolge anwendet.
:
Bearbeitet durch User
Peter M. schrieb: > Hallo Jörg W., > > Jörg W. schrieb: >> … und dann den Hexdump dazu: >> 00400000 41 56 46 5f 49 4e 46 4f 20 20 20 13 00 64 25 47 |AVF_INFO >> ..d%G| >> 00400010 31 43 31 43 00 00 25 47 31 43 03 00 00 00 00 00 >> |1C1C..%G1C......| > > mit welchem Befehl erzeugt man denn den schönen Hexdump? hd Geht sowohl unter FreeBSD als auch Ubuntu. Ist die Kurzform von "hexdump -C".
Peter M. schrieb: > Bernd K. schrieb: >> Aber ein Mediaplayer der >> so blöd ist daß er sich auf die Sortierung der Dateienträge verlassen >> muss stammt garantiert noch aus der FAT-Zeit und kann eh nichts anderes. > > leider nein! :) > > Bei meiner vergeblichen Recherche nach "AAC+ v2"-tauglichen mp3-Playern > bin ich auf dieses Problem gestoßen. > > Such' einfach nach "ruizu mp3 player sort directory". Wenn das so ist, handelt es sich um Kernschrott. Einmal mit dem großen Hammer draufkloppen und was Vernünftiges kaufen... Oder besser: gleich was Vernünftiges kaufen, wenn man schon vorher weiß, dass es Kernschrott ist...
Da es noch nicht genannt wurde: zum sortieren der FAT-Eintraege gibt es auch noch FATSort: https://fatsort.sourceforge.io/
I remember, in my younger days (more than 20 years ago), running DOS and Windows, there was a command to get what topic-starter is looking for. If not mistaken, it was the "debug"-command. It even worked under Windows 32-bit versions. Just a few minutes ago, I performed a test (opening a command-shell) and noticed it's not available for 64-bit versions. And maybe it's good, because it was a very powerful and on occassion a harmful command. However, it wouldn't suprise me if someone ported this command to a WIN 64-bit version, by writing a tool around it or using same technique. -=[EDIT]=- For 64-bit is available : https://www.youtube.com/watch?v=wSvE3Uo6_DU
:
Bearbeitet durch User
Wer Cygwin hat: $ ls -f /cygdrive/<Laufwerksbuchstabe>/
Schon zwei Jahre alt, aber mein Tipp: HxD kann Datenträger oder Datenträger-Abbilder (Images) öffnen und läuft auch mit Wine unter Linux.
Offenbar reicht es, im Windows Explorer o.Ä. nach "Erstelldatum" zu sortieren, um die Reihenfolge zu sehen.
Habe diesen Thread ewig gesucht: "sd mp3" "dateisystem sd" "dateisystem reihenfolge" "fat reihenfolge kopieren mp3" "FAT-Einträge" Diesmal mit Linux unterwegs. Besser als -f (siehe ls --help) $ ls -AURl Almost all Unsorted Recursive list $ sudo apt install fatsort man kann Verzeichnisse angeben. -n sortiert "...11...", "...106..." Alt: Beitrag "filecopy Reihenfolge" Beitrag "Reihenfolge der Speicherung auf SD Karten."