Flache Ordnerstruktur : Verknüpfung zu allen Unterordnern anlegen mit dem gleichen Namen wie die Unterordner haben, wie macht man das?
Hallo an Alle
und herzlichen Dank fürs Lesen ...
Wir haben in unserer Firma das Problem, dass manche User dazu neigen, sehr viele Unterordner verschachtelt anzulegen, so dass man lange suchen muss, bis man etwas findet.
Daher möchte ich eine Batch datei schreiben, die mir für jeden Unterordner eine Verknüpfung anlegt.
Mit xxmklink "C:\Users\a\Desktop\batchme\My Shortcut.lnk" "C:\Users\a\Desktop\batchme\Neuer Ordner" ist das anlegen von einer Verknüpfung leicht gemacht.
Das Verzeichnis an sich ist auch leicht auszulesen und in eine Datei zu schreiben mit
dir /b /s > C:\Users\a\Desktop\batchme\test.txt
Mein Problem ist jetzt, die Verknüpfungen anzulegen, bzw. nur auf den letzten Teil des ausgelesenen Verzeichnisses zuzugreifen (nur die Ordner) und dann
diesen Teil an meine Verknüpfung anzuhängen.
Ich habe mich jetzt durch mehrere Programme gequält, um mit einer schleife jeweils die eingelesenen Verzeichnisse aufzusplitten, aber wie man auf das letzte
befüllte Ereignis eines arrays zugreift, das weiss ich nicht.
Hat jemand lust, mir ein bisschen zu helfen?
viele grüsse
Frank
[Edit Biber] Codeformatierung und nach "Batch & So" verschoben. [/Edit]
und herzlichen Dank fürs Lesen ...
Wir haben in unserer Firma das Problem, dass manche User dazu neigen, sehr viele Unterordner verschachtelt anzulegen, so dass man lange suchen muss, bis man etwas findet.
Daher möchte ich eine Batch datei schreiben, die mir für jeden Unterordner eine Verknüpfung anlegt.
Mit xxmklink "C:\Users\a\Desktop\batchme\My Shortcut.lnk" "C:\Users\a\Desktop\batchme\Neuer Ordner" ist das anlegen von einer Verknüpfung leicht gemacht.
Das Verzeichnis an sich ist auch leicht auszulesen und in eine Datei zu schreiben mit
dir /b /s > C:\Users\a\Desktop\batchme\test.txt
Mein Problem ist jetzt, die Verknüpfungen anzulegen, bzw. nur auf den letzten Teil des ausgelesenen Verzeichnisses zuzugreifen (nur die Ordner) und dann
diesen Teil an meine Verknüpfung anzuhängen.
Ich habe mich jetzt durch mehrere Programme gequält, um mit einer schleife jeweils die eingelesenen Verzeichnisse aufzusplitten, aber wie man auf das letzte
befüllte Ereignis eines arrays zugreift, das weiss ich nicht.
Hat jemand lust, mir ein bisschen zu helfen?
set i=0
rem FOR /f "usebackq delims=\" %%a IN (C:\Users\a\Desktop\batchme\test.txt) do(
FOR /f "usebackq delims==" %%a IN (C:\Users\a\Desktop\batchme\test.txt) DO (
for /F "tokens=1,2,3,4,5,6,7,8,9,10,11,12 delims=\" %%a in ("%%a") do (
echo %%a
echo %%b
echo %%c
echo %%d
echo %%e
echo %%f
echo %%g
set /A i+=1
set "item[!i!]=%%~a"
)
)
set url=%item[3]%
echo %url%
viele grüsse
Frank
[Edit Biber] Codeformatierung und nach "Batch & So" verschoben. [/Edit]
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 318559
Url: https://administrator.de/contentid/318559
Ausgedruckt am: 22.11.2024 um 17:11 Uhr
3 Kommentare
Neuester Kommentar
Mein Problem ist jetzt, die Verknüpfungen anzulegen, bzw. nur auf den letzten Teil des ausgelesenen Verzeichnisses zuzugreifen (nur die Ordner) und dann diesen Teil an meine Verknüpfung anzuhängen.
Ein for /? zeigts dir (ganz am Ende stehen die Expansionen)%%~dpa
%%~nxa