BATCH: Sharename Pfad Berechtigten (auch Gruppen) und die letzte Änderung in Batch Skript auslesen
Hallo ihr Lieben,
mein erster Teil zu der Frage wie ich Sharenamen und Pfad aus net share oder wmic win32_share lese und in txt file ausgebe wurde schon gelöst. Jetzt kommt das schwierige:
über net share "Share name" in cmd wird mir angezeigt wer die Berechtigung hat und welche z.B Read
ich brauche jetzt für jedes Share die Berechtigungen und muss es in meiner txt Datei als TOKEN 3 einfügen. Damit kann ich das später leicht über Exel auslesen.
soweit ich weiss, muss ich mit einer FOR Schleife arbeiten. Er soll alle Sharenamen durchgehen und die Berechtigung + Zugriff merken und es anschließend in einer txt file ausgeben
Meine Idee war dass er beim Durchlauf noch den Sharenamen mitnimmt damit man später beim zuordnen über den Sharenamen einfach an das Ziel kommt.
mein bisheriger Code ist:
for /f "delims= " %%a in ('wmic share get Name^,Path ^| findstr "."') do @echo %%a>>C:\shares.txt
in meiner txt Datei sieht es etwa so aus
Share Path
Ordner 1 C:\Ordner11
Ordner 2 H:\File\test
nun muss an dritter Stelle in jeder Zeile die Benutzer stehen die die Berechtigung besitzen und an der vierten Stelle der Zugriff z.B. READ
Am Ende muss aus der txt file eine csv erstellt werden damit alle Ergebnisse in Excel tabellarisch angezeigt werden können.
Danke schonmal im Voraus für eure Hilfe und Mühe
Viele Grüße
nowyouseeme93
mein erster Teil zu der Frage wie ich Sharenamen und Pfad aus net share oder wmic win32_share lese und in txt file ausgebe wurde schon gelöst. Jetzt kommt das schwierige:
über net share "Share name" in cmd wird mir angezeigt wer die Berechtigung hat und welche z.B Read
ich brauche jetzt für jedes Share die Berechtigungen und muss es in meiner txt Datei als TOKEN 3 einfügen. Damit kann ich das später leicht über Exel auslesen.
soweit ich weiss, muss ich mit einer FOR Schleife arbeiten. Er soll alle Sharenamen durchgehen und die Berechtigung + Zugriff merken und es anschließend in einer txt file ausgeben
Meine Idee war dass er beim Durchlauf noch den Sharenamen mitnimmt damit man später beim zuordnen über den Sharenamen einfach an das Ziel kommt.
mein bisheriger Code ist:
for /f "delims= " %%a in ('wmic share get Name^,Path ^| findstr "."') do @echo %%a>>C:\shares.txt
in meiner txt Datei sieht es etwa so aus
Share Path
Ordner 1 C:\Ordner11
Ordner 2 H:\File\test
nun muss an dritter Stelle in jeder Zeile die Benutzer stehen die die Berechtigung besitzen und an der vierten Stelle der Zugriff z.B. READ
Am Ende muss aus der txt file eine csv erstellt werden damit alle Ergebnisse in Excel tabellarisch angezeigt werden können.
Danke schonmal im Voraus für eure Hilfe und Mühe
Viele Grüße
nowyouseeme93
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 282513
Url: https://administrator.de/forum/batch-sharename-pfad-berechtigten-auch-gruppen-und-die-letzte-aenderung-in-batch-skript-auslesen-282513.html
Ausgedruckt am: 10.05.2025 um 04:05 Uhr
2 Kommentare
Neuester Kommentar

Moin,
da isser wieder ...
Da musst du dir mit Batch aber erst mal einen abbrechen ;-P:
Gruß jodel32
p.s. Bitte schreib auf den Wisch für deinen Lehrer (c) by administrator.de
da isser wieder ...
Da musst du dir mit Batch aber erst mal einen abbrechen ;-P:
@echo off & setlocal ENABLEDELAYEDEXPANSION
(for /f "skip=1 tokens=1,2,3 delims=," %%a in ('wmic share get Name^,Path /format:csv ^| findstr "."') DO @(
set rights=
for /f "skip=6 tokens=1,2,3 delims=, " %%d in ('net share "%%b" ^|findstr /iv "erfolgreich"') DO @(
if "%%f" == "" (
set user=%%d
set right=%%e
) else (
set user=%%e
set right=%%f
)
set "rights=!rights![!user!,!right!]"
)
echo "%%b";"%%c";"!rights!"
))>"C:\shares.csv"
p.s. Bitte schreib auf den Wisch für deinen Lehrer (c) by administrator.de