fehler/anregung - Entpacke jedes Archiv in separates Verzeic
Moderators: Hacker, Stefan2, white
fehler/anregung - Entpacke jedes Archiv in separates Verzeic
-"Entpacke jedes Archiv in separates Verzeichnis (Name des Archivs)"
das entpacken von dateien mit abschließenden punkten im namen z.B. "blah.........zip" auf ihre jeweiligen verzeichnisse geht nicht, da kein verzeichnis mit abschließenden punkten erzeugt wird / werden kann
das entpacken von dateien mit abschließenden punkten im namen z.B. "blah.........zip" auf ihre jeweiligen verzeichnisse geht nicht, da kein verzeichnis mit abschließenden punkten erzeugt wird / werden kann
- ghisler(Author)
- Site Admin
- Posts: 50768
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Doch, Windows erlaubt das sehr wohl.Sorry aber Windows erlaubt das nicht!
md \\?\c:\temp.... erzeugt ein "wunderschönes" Verzeichnis mit vier Punkten am Ende, sogar wenn ich es direkt in die TC-Kommandozeile hacke.
rd \\?\c:\temp.... entfernt es wieder.
Warum ignorierst Du die Punkte nicht einfach, so daß ein "korrektes" Verzeichnis erstellt werden kann? Das selbe gilt auch für das Leerzeichen vor dem Punkt.
Icfu
This account is for sale
2icfu
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/naming_a_file.aspDo not end a file or directory name with a trailing space or a period. Although the underlying file system may support such names, the operating system does not.
Ist mir bekannt, aber was nützt diese Information?
Das ändert am bestehenden Problem, daß Dateien mit Punkten oder Leerzeichen nicht entpackt werden können, überhaupt nichts. Der Anwender muß die Dateien vorher umbenennen und auch das muß man erstmal wissen, denn aus der Fehlermeldung wird man in diesen Fällen nicht schlau.
Wenn man mit F7 ein Verzeichnis erstellt, ignoriert der TC Punkte und Leerzeichen am Ende doch auch, wo ist also das Problem?
Icfu
Das ändert am bestehenden Problem, daß Dateien mit Punkten oder Leerzeichen nicht entpackt werden können, überhaupt nichts. Der Anwender muß die Dateien vorher umbenennen und auch das muß man erstmal wissen, denn aus der Fehlermeldung wird man in diesen Fällen nicht schlau.
Wenn man mit F7 ein Verzeichnis erstellt, ignoriert der TC Punkte und Leerzeichen am Ende doch auch, wo ist also das Problem?
Icfu
This account is for sale
irgendwie fehlt mir da:ghisler(Author) wrote:Sorry aber Windows erlaubt das nicht!
"... aber ich werde mich darum kümmern dass dann wenigstens in das erstellte, wenn auch falsch lautende verzeichnis entpackt wird, anstatt mir einer fehlermeldung abzubrechen"
so klingt es eher wie eine rechtfertigung, nichts tun zu müssen :-))
@Lefteous:
Da Du selbst ein Tool kreiert hast, daß die Erstellung solcher Verzeichnisse ermöglicht, bin ich schon davon ausgegange, daß zumindest DU das verstehst.
2. schrieb ich oben
Icfu
1. Habe ich nur ghislers Aussage geraderücken wollen, daß Windows selbst die Erstellung solcher Verzeichnisse nicht erlaube, was erwiesenermaßen falsch ist.Das klang aber nicht so.
Da Du selbst ein Tool kreiert hast, daß die Erstellung solcher Verzeichnisse ermöglicht, bin ich schon davon ausgegange, daß zumindest DU das verstehst.
2. schrieb ich oben
Evtl. übersehen?Warum ignorierst Du die Punkte nicht einfach, so daß ein "korrektes" Verzeichnis erstellt werden kann? Das selbe gilt auch für das Leerzeichen vor dem Punkt.
Icfu
This account is for sale
- ghisler(Author)
- Site Admin
- Posts: 50768
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Das stimmt so nicht. Wie oben von Lefteous erwähnt sind solche Dateinamen nicht erlaubt. Mi dem Präfix \\?\ wird Windows explizit umgangen, und der Name direkt an das darunterliegende Dateisystem übergeben. Damit kann man z.B. auch Dateien mit mehr als 259 Zeichen anlegen, doch kann man auf diese dann mit normalen Windows-Funktionen nicht mehr zugreifen.Habe ich nur ghislers Aussage geraderücken wollen, daß Windows selbst die Erstellung solcher Verzeichnisse nicht erlaube, was erwiesenermaßen falsch ist.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
2ghisler(Author)
Es geht nicht darum irreguläre Verzeichnisnamen zu erstellen - ganz im Gegenteil.
Vielmehr geht es darum aus einem regulären Archivnamen einen regulären Verzeichnisnamen zu erstellen.
Wie in dem ersten Beitrag des Threads sollte aus dem Archiv "blah.........zip" das Verzeichnis "blah" werden. Total Commander muss also darauf achten, dass das Verzeichnis einen regulären Namen erhält bevor er versucht, es zu erstellen.
Das funktioniert nicht im Augenblick.
Es geht nicht darum irreguläre Verzeichnisnamen zu erstellen - ganz im Gegenteil.
Vielmehr geht es darum aus einem regulären Archivnamen einen regulären Verzeichnisnamen zu erstellen.
Wie in dem ersten Beitrag des Threads sollte aus dem Archiv "blah.........zip" das Verzeichnis "blah" werden. Total Commander muss also darauf achten, dass das Verzeichnis einen regulären Namen erhält bevor er versucht, es zu erstellen.
Das funktioniert nicht im Augenblick.
- ghisler(Author)
- Site Admin
- Posts: 50768
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Leider ist das nicht so einfach. Total Commander macht beim Entpacken zwar Ersetzungen von verbotenen Zeichen wie |, doch Punkte werden z.Zt. nicht ersetzt, da die meistens erlaubt sind (ausser eben mehere am Ende). Mir scheint diese Situation allerdings reichlich konstruiert. Wieso sollte ein Archiv Namen enthalten, die mit mehreren Punkten enden? Beim normalen Packen können diese doch gar nicht entstehen?
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
2ghisler(Author)
Doch können sie. Die Punkte sie ja nur am Ende des Dateinamens nicht erlaubt, jedoch nicht vor der Erweiterung. Total Commander löscht aus dem Namen die Erweiterung (z.B. sqx. Dadurch entstünde in dem genannten Fall ein irregulärer Verzeichnisnamen, was nicht korrigiert wird.Wieso sollte ein Archiv Namen enthalten, die mit mehreren Punkten enden? Beim normalen Packen können diese doch gar nicht entstehen?