lange Pfade abkuerzen, wenn mehrfach vorhanden
Hallo,
hab das Problem, dass ich per batch-Datei auf diverse Dateien in unserem Netzwerk zugreifen muss und diese Dateien in folgenden Ordnern abgelegt sind:
H:\Abbuchung
H:\Eigene Dateien Achhammer
H:\Eigene Dateien Erdinger
H:\Eigene Dateien Gatzhammer
H:\Eigene Dateien Götz
H:\Eigene Dateien Hangstingl
H:\Eigene Dateien Herrler
H:\Eigene Dateien Straile
H:\Statistiken
So. Wie ich lange Dateinamen bzw. Pfade abkürzen kann, weiß ich mittlerweile.
Deshalb funktioniert der Aufruf eines Pfads mit H:\eigene~1\test.xls auch wunderbar.
Aber... nur, solange ich in den Ordner "Eigene Dateien Achhammer" rein will.
Per Eingabe in cmd hab ich mittlerweile herausgefunden, dass Achhammer sich mit ~1, Erdinger mit ~2, Hanfstingl sich mit ~3 und Herrler mit ~4 abgekürzt wird.
Gibt aber für mich keinen Sinn, da ein Aufruf mit ~5 nicht mehr funktioniert (obwohl noch viele andere fast gleichnamige Ordner vorhanden sind) und die ersten vier ja auch nicht in alphabetischer Reihenfolge (oder eine andere offensichtliche) abgefragt werden.
Dass man auch lange Pfade schreiben kann, wenn man den Pfad in "" setzt, weiß ich mittlerweile auch, ist hier aber nicht die Frage.
Ich möchte das ganze eben so über ~1 aufrufen... muss möglich sein, ich find aber (auch nach längerer google-Suche) nix über dieses Thema. Leider.
Vielleicht kann mir hier ja einer helfen.
Danke schon mal.
hab das Problem, dass ich per batch-Datei auf diverse Dateien in unserem Netzwerk zugreifen muss und diese Dateien in folgenden Ordnern abgelegt sind:
H:\Abbuchung
H:\Eigene Dateien Achhammer
H:\Eigene Dateien Erdinger
H:\Eigene Dateien Gatzhammer
H:\Eigene Dateien Götz
H:\Eigene Dateien Hangstingl
H:\Eigene Dateien Herrler
H:\Eigene Dateien Straile
H:\Statistiken
So. Wie ich lange Dateinamen bzw. Pfade abkürzen kann, weiß ich mittlerweile.
Deshalb funktioniert der Aufruf eines Pfads mit H:\eigene~1\test.xls auch wunderbar.
Aber... nur, solange ich in den Ordner "Eigene Dateien Achhammer" rein will.
Per Eingabe in cmd hab ich mittlerweile herausgefunden, dass Achhammer sich mit ~1, Erdinger mit ~2, Hanfstingl sich mit ~3 und Herrler mit ~4 abgekürzt wird.
Gibt aber für mich keinen Sinn, da ein Aufruf mit ~5 nicht mehr funktioniert (obwohl noch viele andere fast gleichnamige Ordner vorhanden sind) und die ersten vier ja auch nicht in alphabetischer Reihenfolge (oder eine andere offensichtliche) abgefragt werden.
Dass man auch lange Pfade schreiben kann, wenn man den Pfad in "" setzt, weiß ich mittlerweile auch, ist hier aber nicht die Frage.
Ich möchte das ganze eben so über ~1 aufrufen... muss möglich sein, ich find aber (auch nach längerer google-Suche) nix über dieses Thema. Leider.
Vielleicht kann mir hier ja einer helfen.
Danke schon mal.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 89444
Url: https://administrator.de/contentid/89444
Ausgedruckt am: 23.11.2024 um 00:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo,
entscheident für ~1 ~2 usw ist nicht das Alphabet, sondern die Reihenfolge - welcher Ordner zuerst angelegt wurde.
Von daher - wenn du ~123 benutzen willst und "erstmal" keine neuen Ordner angelegt werden - neuanlegen unter Verwendung des Alphabets.
Obwol "echter leerzeichen Name" natürlich auf Dauer eleganter und "durchsichtiger" ist.
entscheident für ~1 ~2 usw ist nicht das Alphabet, sondern die Reihenfolge - welcher Ordner zuerst angelegt wurde.
Von daher - wenn du ~123 benutzen willst und "erstmal" keine neuen Ordner angelegt werden - neuanlegen unter Verwendung des Alphabets.
Obwol "echter leerzeichen Name" natürlich auf Dauer eleganter und "durchsichtiger" ist.
Moin dawson,
zumindest Dich einen Schritt näher ranzubringen kann ich mal versuchen.
Der DIR-Befehl ist ja durchaus in der Lage, den kurzen Dateinamen mit auszugeben.
So würdest Du mit einem Befehl vom CMD-Prompt wenigstens die "kurzen" Dateinamen ohne Probieren ermitteln können.
Am CMD-Prompt.
---bitte selbst testen.
alle Verzeichnisse, bei einen Kurznamen haben als 2spaltige Liste:
einfach mal Copy&pasten und vom CMD-Prompt aus abschicken.
Mit dieser FOR/F-Anweisung kannst Du natürlich die Namen FEST hinterlegen oder auch die Batchdatei selbst den Kurznamen EINES Verzeichnisses ermitteln lassen.
Falls Dein Wunsch aber sogar in die Richtung geht ...
"Hey, außer mir kennt und benutzt doch keine Sau dieser Shortnames - ich benenne die (nur die Shortnames, nicht die sichtbaren Langnamen) einfach um in "Dawson~1" ..."Dawson~9"....
Geht auch mit Hilfe des Utilities FsUtil (einfach mit FsUtil /? das Vorhandenensein überprüfen).
Allerdings sind das relativ exotische Gefilde - ich habe sowas zwar schon mal aus Neugier gemacht, aber nicht wirklich in einer Produktivumgebung auf Seiteneffekte getestet.
Und ich traue keinem M$-Betriebssystem weiter, als ich es werfen kann.
Grüße
Biber
zumindest Dich einen Schritt näher ranzubringen kann ich mal versuchen.
Der DIR-Befehl ist ja durchaus in der Lage, den kurzen Dateinamen mit auszugeben.
So würdest Du mit einem Befehl vom CMD-Prompt wenigstens die "kurzen" Dateinamen ohne Probieren ermitteln können.
Am CMD-Prompt.
Dir /ad /x h:
alle Verzeichnisse, bei einen Kurznamen haben als 2spaltige Liste:
For /f "tokens=3,4,*" %i in ('dir /ad /x "h:\"') do @If "%i"=="<DIR>" @if [%k] NEQ @echo [%j] "%k"
Mit dieser FOR/F-Anweisung kannst Du natürlich die Namen FEST hinterlegen oder auch die Batchdatei selbst den Kurznamen EINES Verzeichnisses ermitteln lassen.
Falls Dein Wunsch aber sogar in die Richtung geht ...
"Hey, außer mir kennt und benutzt doch keine Sau dieser Shortnames - ich benenne die (nur die Shortnames, nicht die sichtbaren Langnamen) einfach um in "Dawson~1" ..."Dawson~9"....
Geht auch mit Hilfe des Utilities FsUtil (einfach mit FsUtil /? das Vorhandenensein überprüfen).
Allerdings sind das relativ exotische Gefilde - ich habe sowas zwar schon mal aus Neugier gemacht, aber nicht wirklich in einer Produktivumgebung auf Seiteneffekte getestet.
Und ich traue keinem M$-Betriebssystem weiter, als ich es werfen kann.
Grüße
Biber