Jump to content

Rekursive Batch-Schleife


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hi,

 

ich hab ein kleines Problem und erhoffe mir Hilfe: Ich möchte einen unserer Server von den alten Servergespeicherten Profilen befreien. Da dort noch die Original-Berechtigungen sind (also ohne GPO-Einstellung), sind die Berechtigungen und Besitzrechte auf jeden Benutzer gesetzt. Zudem sind in den Profilen teilweise versteckte und / oder schreibgeschützte und / oder als System markierte Dateien. Ich habe die notwendigen Befehle und Aufrufe, um alles das per Kommandozeile für den Administrator zu setzen und dann mit einem Schlag zu löschen. Was ich nicht weiss, wie man eine rekursive Batch-Schleife aufbauen kann, um das nicht durch das unendliche Wiederholen von Kommandos abzuarbeiten, sondern mit einer einzigen Batch-Datei.

 

Hat jemand eine Idee für mich?

 

cu,

cjmatsel

Link zu diesem Kommentar

Ist es aber das was Du möchtest?

 

Du schriebst von einer rekursiven Schleife, das bracht mich natürlich auf den Selbstaufruf der Batch.

 

Eine Schleife innerhalb eines Programms ist etwas anderes nach meinem Verständnis.

 

In einer Batch gibt es eine einfache Möglichkeit eine primitive "Schleife" zu bauen mittels Label und Goto, dazwischen die Befehle und natürlich die Abbruchmöglichkeit.

 

:Label

Befehl 1

Befehl 2

Befehl n

If ......... goto end

goto label

:end

 

Weiter gibt es die For-Schleife, for /?

 

siehe for /f

siehe for /l

siehe for /d

Link zu diesem Kommentar

Hi lefg,

 

Das ist zwar ein "Endlos-Programm", aber ich denke, das reicht erstmal aus. Eine For-Schleife lässt sich, meines bescheidenen Wissens nach, nicht rekursiv aufrufen. Label und Goto wäre tatsächlich auch noch Möglichkeiten...

 

Leider gibt es für keine der genannten Möglichkeiten eine Abbruchbedingung; diese müsste ich dann mit "if" bzw. einer bestimmten Stringprüfung (findstr) selbst bauen und dann darauf prüfen lassen...

 

Eine Idee für eine Abbruchbedingung wäre die Verzeichnistiefe, also irgendwas mit "dir" und "cd"; leider konnte ich sowas noch nicht realisieren...

 

cu,

cjmatsel

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...