In Batch-Datei der aktuellen Ordernamen ohne Stammordner als Parameter verwenden
Hallo in die Runde,
vor allem liebe Batch-Profis,
wenn ich auf einem Server 2003 folge Ordnerstruktur habe:
und dann mittels
und so weiter, wie kann ich das "rekursiv automatisieren", so dass immer der Ordnername (ohne Stammordner) als Benutzername zur Verfügung steht. Nach unten darf sich das natürlich nicht fortsetzen, auf den Ordner d:\schuelerdaten\b.mueller\fotos soll natürlich trotzdem dem Benutzer b.mueller der Zugriff gewährt werden, nicht dem nicht existierenden Benutzer fotos
P.S.: Wenn's geht, ohne Powershell, damit habe ich gar keine Erfahrungen
vor allem liebe Batch-Profis,
wenn ich auf einem Server 2003 folge Ordnerstruktur habe:
d:\Schuelerdaten | +- a.schmidt | +- b.mueller | +- c.meier | +- d.schulz
und dann mittels
- mittels icacls.exe "d:\schuelerdaten\a.schmidt\*" /T /grant "a.schmidt"
OI)(CI)F dem Benutzer a.schmidt Vollzugriff auf seinen Ordner gewähren möchte
- mittels icacls.exe "d:\schuelerdaten\b.mueller\*" /T /grant "b.mueller"
OI)(CI)F dem Benutzer b.mueller Vollzugriff auf seinen Ordner gewähren möchte
und so weiter, wie kann ich das "rekursiv automatisieren", so dass immer der Ordnername (ohne Stammordner) als Benutzername zur Verfügung steht. Nach unten darf sich das natürlich nicht fortsetzen, auf den Ordner d:\schuelerdaten\b.mueller\fotos soll natürlich trotzdem dem Benutzer b.mueller der Zugriff gewährt werden, nicht dem nicht existierenden Benutzer fotos
P.S.: Wenn's geht, ohne Powershell, damit habe ich gar keine Erfahrungen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 348073
Url: https://administrator.de/forum/in-batch-datei-der-aktuellen-ordernamen-ohne-stammordner-als-parameter-verwenden-348073.html
Ausgedruckt am: 02.04.2025 um 07:04 Uhr
7 Kommentare
Neuester Kommentar

Einfache FOR-Schleife
Sollte man als Level 2 eigentlich mittlerweile kennen ...
Gruß
for /d %%a in ("D:\Schuelerdaten\*") do icacls "%%~a\*" /T /grant "%%~nxa":(OI)(CI)F
Gruß

For /?
oder set /?
eingeben, ganz unten steht die Zusammenfassung der Variablenexpandierung
Hallo,
Schon mal eingemacht?
Gruß,
Peter
Schon mal ein
@echo off
for /d %%a in ("D:\Schuelerdaten\*") do (
Echo Tilde a = "%%~a\*"
Echo Tilde nxa = "%%~nxa"
Echo ...
)
Gruß,
Peter

Logisch, einfach ein
An den Anfang setzen, dann klappt's auch mit den Umlauten. Steht aber auf so ziemlich jeder Seite dazu im Netz.
Chcp 1252