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 Nach einer individuell langen For-Schleife Script weiter ausführen

Mitglied: Dynarius

Dynarius (Level 1) - Jetzt verbinden

15.04.2011, aktualisiert 18.10.2012, 4300 Aufrufe, 17 Kommentare

Hallo zusammen,

habt ihr ne Idee wie ich nach einer For-Schleife in Batch die immer unterschiedlich lang ist ein Script weiter ausführen kann ??

Ist vlt. ein bisschen dumm erklärt was mein problem jedoch ist, ist das eine for-schleife abläuft die eine .txt prüft welche jedoch immer individuell lang ist sprich immer mehr zeilen bekommt.
so nun möchte ich aber nach dem die For-Schleife die .txt Datei geprüft hat ein Script weiter laufen lassen. Das problem was ich habe ist das ich keinen counter laufen lassen kann da ich nie weiß wie lange die .txt datei ist.
Mitglied: Skyemugen
15.04.2011 um 10:56 Uhr
Aloha,

1.) for-Schleife ... wir reden von ... Batch? Oder wovon?
2.) mal T-Mos Begriffe klau Ohne Ross und Reiter kommen wir nicht weiter, sprich: Du hast ein Skript, poste es doch mal, denn dein Geschriebsel ergibt für mich nur 72% Sinn und der Rest ist dunkel ...
3.) Der Beitrag gehört wohl eher in den Bereich Entwicklung und wenn 1.) zutrifft, dort in Batch & Shell

greetz André
Bitte warten ..
Mitglied: 99045
15.04.2011, aktualisiert 18.10.2012
Moin,

da verweise ich doch glatt auf einen soeben von mir geschriebenen Beitrag in einem anderen Thread:
https://www.administrator.de/forum/for-f-schleife-164639.html#comment-65 ...

Gruß
Bitte warten ..
Mitglied: Skyemugen
15.04.2011 um 11:14 Uhr
Aloha,

ausgehend von deinem Code im falschen Thread ...

01.
@echo off & setlocal 
02.
set "Datei=C:\Export.txt" 
03.
set "Log=C:\fertig.txt" 
04.
 
05.
csvde -d "OU=Users,OU=OU1,DC=Subdomäne,DC=Domäne,DC=de" -f "C:\Export.txt" -l "telephoneNumber,SamAccountName" -s Domänencontroller -t 389 
06.
 
07.
sleep 7 
08.
 
09.
for /F "tokens=7,8 delims=," %%a in ("%Datei%") do call :start %%a %%b 
10.
del "%Datei%" 
11.
goto :eof && REM beendet den Hauptablauf 
12.
 
13.
:start 
14.
set name=%5 
15.
set telefon=%4 
16.
echo %5;%4;1 >> "%Log%" 
17.
goto :eof && REM beendet den Subablauf und springt zurück zu dem Punkt nach der Schleife
greetz André
Bitte warten ..
Mitglied: Dynarius
15.04.2011 um 11:57 Uhr
Ich forste gerade weil er mir dir fertig.txt datei nicht schreibt =(
Bitte warten ..
Mitglied: Skyemugen
15.04.2011 um 12:09 Uhr
Aloha,

mich wundert ein wenig, dass du %%a und %%b übergibst aber im Prozess dann Parameter %5 und %4 verwendest ... müsste da nicht %2 (für %%b) und %1 (für %%a) stehen?

Wobei er nichtsdestotrotz die Datei zumindest anlegen sollte, sie müsste dann aber leer sein.

greetz André
Bitte warten ..
Mitglied: Dynarius
15.04.2011 um 12:13 Uhr
Wieso %2 und %1 ?

an der Stelle gebe ich an welches Wort von dem Wert ausgelesen werden soll. Also das 5te Wort von dem Wert. Funktioniert soweit eig. auch. Nur die Schleife bekomme ich nicht los.

Ich merke auch das er den Call Befehl gar nicht mehr ausführt sondern nur noch die .txt Datei erstellt und sie dann wieder löscht. Eig. sollte er in dem Call Befehl jede Zeile von der Export.txt auslesen und neu in die fertig.txt schreiben.

LG
Bitte warten ..
Mitglied: Skyemugen
15.04.2011 um 12:17 Uhr
Aloha,

er führt also den call Befehl aus, sonst würde er keine .txt erstellen ...
mache doch mal echo on und schau, was er als %name% und %telefon% hat ... (wahrscheinlich gar nichts)

und am Besten gibst du uns auch ein echo %%a %%b, damit wir mal sehen, was du dort eigentlich stehen hast ... und welche Wörter du dort wie mit deinen Parametern auslesen willst, denn so glasklar ist mir das nicht

greetz André
Bitte warten ..
Mitglied: bastla
15.04.2011 um 12:24 Uhr
Hallo Dynarius und Skyemugen!

%4 und %5 sind natürlich bei der Übergabe von nur 2 Parametern sinnfrei - aber das ist beim derzeitigen Stand der ganze Unterprogrammaufruf; wenn nur die entsprechenden Werte in "%Log%" gespeichert werden sollen, einfach:
for /F "usebackq tokens=7,8 delims=," %%a in ("%Datei%") do >>"%Log%" echo %%a;%%b;1
Hinsichtlich der Reihenfolge: Die Ausgabe der Eigenschaftswerte durch "csvde" erfolgt nicht in der Reihenfolge, die beim Aufruf angegeben wurde ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
15.04.2011 um 12:27 Uhr
Aloha bastla!

sehe ich eigentlich auch so, darum wollte ich von ihm noch erfahren, was er dort mit seinen Parametern eigentlich erreichen wollte (ich würde mich nämlich nicht wundern, wenn %%a und %%b selbst nochmal Unterteilungen haben, die er eigentlich loggen wollte ... - so erschien es mir zumindest), bevor man das call ckillt ^_^

greetz André
Bitte warten ..
Mitglied: Dynarius
15.04.2011, aktualisiert 18.10.2012
Sekunde ihr kennt die Vorgeschichte an der Stelle nicht, so einfach wie beschrieben geht es leider nicht. Das habe ich schon in einem anderen Thread gelöst:

https://www.administrator.de/forum/export-aus-ad-mit-ldifde-oder-csvde-% ...
Bitte warten ..
Mitglied: bastla
15.04.2011 um 12:47 Uhr
Hallo Dynarius!

Die Frage von Skyemugen war ja zurecht, was Du dann weiter mit den Daten noch anstellen willst - und das geht aus der Vorgeschichte auch nicht hervor ...

BTW
Das habe ich schon in einem anderen Thread gelöst:
hätte ich dort gar nicht herausgelesen ...

Grüße
bastla
Bitte warten ..
Mitglied: Dynarius
15.04.2011 um 12:51 Uhr
Doch hier habe ich es erklärt:

Ausgabe ---> "CN=Mustermann.Hans,OU=Users,OU=ersteOU,DC=Subdomain,DC=Domain,DC=de",+49 (89) 12345 6756,mustermannha"

eig. benötige ich nur: "6756,mustermannha"

Das funktioniert alles auch super, jedoch möchte ich wie gesagt nachdem die Schleife durch ist die Datei wieder löschen.
Bitte warten ..
Mitglied: bastla
15.04.2011, aktualisiert 18.10.2012
Hallo Dynarius!
Doch hier habe ich es erklärt:
Die Frage war ja auch, was Du dann noch tun wolltest - anyhow:
jedoch möchte ich wie gesagt nachdem die Schleife durch ist die Datei wieder löschen.
Wie das geht, hat doch Skyemugen oben schon gezeigt ...

Grüße
bastla
Bitte warten ..
Mitglied: Dynarius
15.04.2011 um 13:00 Uhr
Habs gelöst danke für eure Hilfe. Wenn ihr die Lösung wissen wollt dann poste ich es auf nachfrage.

Danke
LG
Bitte warten ..
Mitglied: bastla
15.04.2011 um 13:02 Uhr
Hallo Dynarius!
Wenn ihr die Lösung wissen wollt dann poste ich es auf nachfrage.
Das nenne ich einmal eine gesunde Einstellung ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
15.04.2011 um 13:19 Uhr
Aloha,

auch wenn ich bastlas Sarkasmus in diesem Punkt super finde ^_^

geht es hier um mehr als nur dich (als TE) oder uns (als Helfer) sondern um die Leute, die hier sonst noch so mit reinschnuppern, oft auf der Suche nach funktionierenden & passenden Lösungen.

Daher wäre das Posten deiner Endlösung mit parallelem Häkchensetzen (denn eine gelöst Aufgabe ergibt einen als gelöst markierten Thread) doch mehr als nur willkommen.

greetz André
Bitte warten ..
Mitglied: Dynarius
15.04.2011 um 13:30 Uhr
ja ja sorry hier die lösung:

01.
@echo off 
02.
 
03.
If exist C:\fertig.txt then 
04.
del C:\fertig.txt 
05.
EndIf 
06.
 
07.
csvde -d "OU=Users,OU=OU1,DC=Subdomäne,DC=Domäne,DC=de" -f "C:\Export.txt" -l "telephoneNumber,SamAccountName" -s Domänencontroller -t 389 
08.
 
09.
sleep 3 
10.
 
11.
for /F "tokens=7,8 delims=," %%a in (C:\Export.txt) do call :start %%a %%b 
12.
del C:\Export.txt 
13.
 
14.
:start 
15.
echo %5;%4;1 >> C:\fertig.txt
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Schleife als FOR-SCHLEIFE
gelöst Frage von mp2711Batch & Shell2 Kommentare

Mit den FOR-Schleifen habe ich mich leider bislang zu selten auseinander gesetzt, aber da ich sonst gerade nicht weiter ...

Batch & Shell

FOR Schleife mit LOOP und nachfolgender FOR Schleife

gelöst Frage von miczarBatch & Shell6 Kommentare

Hallo zusammen, ich habe ein Problem mit einem Batchfile. Situation: im Netzwerk ist kein WINS mehr vorhanden und so ...

Batch & Shell

FOR Schleife läuft nicht

gelöst Frage von sugramBatch & Shell4 Kommentare

Hallo Ich glaube ich sehe den Wald vor lauter Bäumen nicht. Aber ich bekomme die FOR Schleife nicht zum ...

Batch & Shell

For Schleife kaputt?

gelöst Frage von Peter32Batch & Shell5 Kommentare

Hallo, ich finde den Fehler nicht irgendwie bekomme ich ständig denselben Inhalt in "Name.txt" und kann dann nicht weiterarbeiten ...

Neue Wissensbeiträge
Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 3 StundenHumor (lol)1 Kommentar

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 16 StundenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Sicherheit

Intel gibt neue Spectre V2-Microcode-Updates frei (20.02.2018)

Information von kgborn vor 16 StundenSicherheit

Intel hat zum 20. Februar 2018 weitere Microcode-Updates für OEMs freigegeben, um Systeme mit neueren Prozessoren gegen die Spectre ...

Microsoft
ARD-Doku - Das Microsoft Dilemma
Tipp von Knorkator vor 19 StundenMicrosoft3 Kommentare

Hallo zusammen, vor einigen Tagen lief in der ARD u.a. Reportage. Das Youtube Video dazu dürfte länger verfügbar sein. ...

Heiß diskutierte Inhalte
Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server40 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Router & Routing
ISC DHCP 2 Subnetze
gelöst Frage von janosch12Router & Routing19 Kommentare

Hallo, ich betreibe bei mir im Netzwerk einen ISC DHCP Server auf Debian, der DHCP verwaltet aktuell ein /24 ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...