Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Geschachtelte For Schleife funktioniert nur im ersten Durchlauf

Frage Entwicklung Batch & Shell

Mitglied: seb1212

seb1212 (Level 1) - Jetzt verbinden

24.02.2015, aktualisiert 25.02.2015, 517 Aufrufe, 1 Kommentar

Guten Morgen,

vielleicht kann mir einer von euch sagen warum mein Script nach dem ersten Durchlauf nicht mehr an den Anfang der ersten Schleife zurück springt.Nach dem erstem durchlauf springt das Script vom Ende der übergeordneten Schleife zum Anfang der zweiten For Schleife anstatt wieder an den Anfang der übergeordneten For Schleife.

Die Datei Berechtigung_P.txt sieht so aus:

%Userid%;%UserId_antragsteller%
%Userid%;%UserId_antragsteller%
%Userid%;%UserId_antragsteller%

Hier erstmal das Script:
(Servername wurden durch //Pfad ersetzt, die Echos Anfang 1 etc. sind zum Testen enthalten)

01.
  
02.
@Echo off 
03.
SETLOCAL ENABLEDELAYEDEXPANSION 
04.
 
05.
::Prüfen ob Benutzer zum berechtigen vorhanden sind 
06.
 
07.
if not exist \\Pfad\berechtigung_p.txt goto Ende 
08.
 
09.
for /f "tokens=*" %%m in ('powershell.exe -ExecutionPolicy ByPass -command Get-Date -format ddMMyyyy') do set "Datum=%%m" 
10.
 
11.
::Datei auslesen, Benutzer Vollzugriff geben, Benutzername in Datei mit Datum von Heute eintragen 
12.
  
13.
for /f "tokens=1,2 delims=;" %%i in (\\Pfad\berechtigung_p.txt) do ( 
14.
	echo anfang 1 
15.
	set "neuer_user=%%i" 
16.
	set "user=%%j" 
17.
	echo !user! 
18.
	rem echo %%i>>\\Pfad\\Berechtigungen\!Datum!.log 
19.
	rem echo %%i>>\\Pfad\\Berechtigungen\icacls.log 
20.
 
21.
		for /f "USEBACKQ skip=1" %%a in (`dsquery.exe user -name !User!^| dsget.exe user -email`) do (  
22.
			echo anfang 2 
23.
			set Email=%%a 
24.
			echo ende 2 
25.
			call :skip 
26.
27.
:skip 
28.
echo !email! 
29.
icacls d:\TEST /t /c /q /inheritance:e /grant !neuer_user!:(OI^)(CI^)(F^)>>d:\log.txt 
30.
	if "!errorlevel!" == "0" echo  \\Pfad\\admin\Laufwerk_P\Email_erfolgreich.bat !neuer_user! !email! 
31.
	if "!errorlevel!" GEQ "1" echo \\Pfad\\admin\Laufwerk_P\Email_fehler.bat !neuer_user! !email!					 
32.
33.
rem del \\Pfad\\hwinfo\berechtigung_p.txt 
34.
:Ende 
35.
ENDLOCAL
So und hier jetzt was dabei rauskommt

01.
  
02.
anfang 1 
03.
UserId 
04.
anfang 2 
05.
ende 2 
06.
email@adresse.de 
07.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId email@adresse.de 
08.
anfang 2 
09.
ende 2 
10.
dsget 
11.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget 
12.
dsget 
13.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget 
14.
anfang 1 
15.
UserId 
16.
anfang 2 
17.
ende 2 
18.
email@adresse.de 
19.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId email@adresse.de 
20.
anfang 2 
21.
ende 2 
22.
dsget 
23.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget 
24.
dsget 
25.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget 
26.
anfang 1 
27.
UserId 
28.
anfang 2 
29.
ende 2 
30.
email@adresse.de 
31.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId email@adresse.de 
32.
anfang 2 
33.
ende 2 
34.
dsget 
35.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget 
36.
dsget 
37.
 \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget
Meine Frage jetzt, wo kommen nur Zeilen "\\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId dsget" her, eigentlich soll das Script nur diese Zeilen generien.
" \\Pfad\admin\Laufwerk_P\Email_erfolgreich.bat UserId email@adresse.de"

Vielen Dank


Mitglied: rubberman
LÖSUNG 24.02.2015, aktualisiert 25.02.2015
Hallo seb1212,

ohne jetzt näher zu verstehen, was dein Code tut ...
Ein Label innerhalb einer Schleife anzuspringen, funktioniert nicht. Das musst du komplett umstricken.
Pseudocode:
01.
@echo off 
02.
FOO ... 
03.
 
04.
for %%x in (...) do ( 
05.
  BLA ... 
06.
  for %%y in (...) do ( 
07.
    BLUB ... 
08.
    call :myLabel 
09.
10.
  call :myLabel 
11.
12.
rem Ende Hauptcode 
13.
exit /b 
14.
 
15.
 
16.
rem Subroutine 
17.
:myLabel 
18.
BAR ... 
19.
rem Ende Subroutine 
20.
exit /b
Grüße
rubberman
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Geschachtelte For Schleife Variable weiter benutzen
gelöst Frage von seb1212Batch & Shell4 Kommentare

Hallo zusammen, ich habe ein kleines Problem, im untenstehenden Code hat die Variable %Datum% in Zeile 13 leider keinen ...

Batch & Shell
Zippen von Dateien in Variablen Verzeichnissen - geschachtelte FOR-Schleife
gelöst Frage von misterjoBatch & Shell5 Kommentare

Hallo zusammen, Das ist mein erster Eintrag hier. Ich hoffe, dass ihr mir helfen könnt. Ich habe folgende Ausgangssituation: ...

Batch & Shell
Powershell If-Schleife funktioniert nicht
gelöst Frage von windelterroristBatch & Shell5 Kommentare

Hallo Admins Arbeite gerade an einem kleinen Script funktioniert aber nicht so, wie ich mir das vorstelle Mein Code: ...

Windows 7
Geschachtelte virtuelle Festplatte
Frage von ThierryHenryWindows 75 Kommentare

Hallo Habe hier etwas gelesen und wollte wissen was genau eine geschachtelte virtuelle Festplatte ist, was mir das bringt ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 17 StundenBatch & Shell8 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 19 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows Server
Sichere Remote Desktop Verbindung wie?
gelöst Frage von nuss33Windows Server11 Kommentare

Hallo zusammen, eins vorweg: Ich besitze einen privaten Windows Server 2008 R2 zu Hause im Netzwerk er wird nicht ...