jschneider
Goto Top

Ausgabe eines externen Kommandos in for - Schleife

Hallo

ich habe gerade ein Problem mit einer For - Schleife in der ein externes Kommando aufgerufen wird

Das Kommando:
rights.exe, ein Netware Kommando, welches mir die Berechtigungen ds angegebenen Ordners ausliest

Da das nur auf Netware Volumes funktioniert gehe ich mal nicht davon aus , dass Ihr Script-Helden und Batch-Brotschneider das einfach so nachvollziehen könnt

Befehl mit Beispielausgabe:
L:\>rights %Verzeichnisname% /T
NetwarServername:Volumenname\Volume\Ordner\Verzeichnisname
Es wurden keine Benutzer-Trustees zugeordnet.
----------
Gruppen-Trustees:
     Gruppenname.TREE.TREE.DE.TLD         [ RWCEMF ]


L:\>

ich muss die Gruppentrustees auslesen. Von Interesse ist der Gruppenname und die in den stehenden Rechte
dazu ermittle ich in einer ersten Schleife die Zeillennummer, in der der String "Gruppen-Strustees:" gefunden wird und arbeite dann mit dieser Zeilennummer weiter um in die nächste Zeile zu springen, in der dann die für mich wichtigen Werte stehen


meine For-Schleife
sieht so aus, dass ich die Ausgabe der oben beschriebenen rights exe verarbeiten will

for /f "tokens=1-2* delims=:" %%q in ('z:\rights.exe %stdir% /T ^|findstr /n c:"Gruppen-Trustees:"') do (  
  echo  3. Berechtigungen auf %stdir% gefunden
  echo     - Lese Berechtigungen aus
     if %Debug% EQU yes (
    echo [Debug] Berechtigungen beginnen ab Zeile [%%q]
   )
  call :RechteExtrahieren %%q "%stDir%"  

) 
echo      - Trustee lesen ende
goto :eof

Mein Problem ist, dass der Befehl rights.exe innerhalb der For-Schleife nicht zu funktionieren scheint .


Ich stehe auf dem Schlauch .. hat jemand eine Idee ?

Content-Key: 96541

Url: https://administrator.de/contentid/96541

Ausgedruckt am: 28.03.2024 um 08:03 Uhr

Mitglied: miniversum
miniversum 10.09.2008 um 11:47:21 Uhr
Goto Top
Hast Du schonmal getestet die Ausgabe von erights in eine Datei umzuleiten und die dann mit findstr im For durchsuchen zu lassen? halt nur zum testen mal.