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 Sort Befehl führt zu einer Endlossschleife mit Fehlermeldung

Mitglied: barkingdog

barkingdog (Level 1) - Jetzt verbinden

20.01.2009, aktualisiert 10:32 Uhr, 2463 Aufrufe, 1 Kommentar

Hallo,

ich hab hier eine bat mit deren Hilfe ich bestimmte Telefonnummern aus einer Log-Datei der Telefonanlage rausfiltere.
Die Nummern 100 und 111 sind die Nummern die rausgefiltertwerden. Diese Anrufe werden dann in eine Datei geschrieben, welche dann weiterverschickt wird.
Allerdings möchte ich diese Datei vorhin noch sortieren und zwar nach Datum und Uhrzeit. Bisher sind es zwei Blöcke nämlich einmal der mit der Nummer 100 und einmal mit der 111,da stimmt dann die Sortierung nicht.Ich habe es mit dem sort Befehl probiert allerdings, kommt es dabei zu einer Endlosschleife mit der Fehlermeldung: "Maximale Rekursionstiefe für Setlocal erreicht".



01.
@echo off & setlocal  
02.
set "Anrufe=D:\ANRUFE.TXT"  
03.
set "AnrufeTemp=D:\ANRUFETEMP.TXT" 
04.
set "CTILOG=D:\CTILOG.TXT"  
05.
set "Antwort=D:\antwort.txt" 
06.
set "Puffer=D:\bla.txt" 
07.
set "variable=n" 
08.
 
09.
:Loop  
10.
IF exist     %Anrufe% 	for /f "tokens=1-10 delims=," %%a  in ('findstr /c:", 111"  "%CTILOG%"^|findstr /c:",ein"')   do >>"%Anrufetemp%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
11.
IF exist     %Anrufe% 	for /f "tokens=1-10 delims=," %%a  in ('findstr /c:", 100"  "%CTILOG%"^|findstr /c:",ein"')   do >>"%Anrufetemp%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
12.
IF not exist %Anrufe% 	for /f "tokens=1-10 delims=," %%a  in ('findstr /c:", 111"  "%CTILOG%"^|findstr /c:",ein"')   do >>"%Anrufe%" 	   echo %%a,%%b,%%c,%%d,%%e,%%f 
13.
IF not exist %Anrufe% 	for /f "tokens=1-10 delims=," %%a  in ('findstr /c:", 100"  "%CTILOG%"^|findstr /c:",ein"')   do >>"%Anrufe%" 	   echo %%a,%%b,%%c,%%d,%%e,%%f 
14.
sort %Anrufe%  /o %Anrufe% 
15.
sort %Anrufetemp% /o %Anrufetemp% 
16.
goto :vergleich 
17.
 
18.
:vergleich 
19.
echo %variable% >%antwort% 
20.
comp  %AnrufeTemp% %ANRUFE%<%antwort% 
21.
if  %ERRORLEVEL%==1 goto :Ungleich 
22.
if  %ERRORLEVEL%==0 del /q %AnrufeTemp% goto :Loop 
23.
del /q %Anrufetemp% 
24.
sleep 5 
25.
goto :Loop 
26.
 
27.
:Ungleich 
28.
type nul > %Anrufe% 
29.
for /f "tokens=1-10 delims=," %%a  in ('findstr /c:", 111" "%CTILOG%"^|findstr /c:",ein"') do >>"%Anrufe%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
30.
for /f "tokens=1-10 delims=," %%a  in ('findstr /c:", 100" "%CTILOG%"^|findstr /c:",ein"') do >>"%Anrufe%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
31.
<b>sort %Anrufe% /m 1048576 /o %Anrufe%</b> 
32.
del /q %Anrufetemp% 
33.
goto :Loop
Beispiel aus der Logdatei der Telefonanlage:

01.
01.12.2008,09:46:01, 100,       +49 (3333) 33333,  ja,ein,     9,                     100,                     100 
02.
01.12.2008,10:00:41, 100,       +49 (3333) 33333,  ja,aus,    14,                     100,                     100 
03.
01.12.2008,10:05:25, 111,       +49 (3333) 33333,nein,ein,     0,                     111,                     111 
04.
01.12.2008,10:20:50, 100,       +49 (3333) 33333,  ja,ein,    93,                     100,                     100
Mit freundlichen Grüßen

barkingdog
Mitglied: barkingdog
20.01.2009 um 14:45 Uhr
Hallo,

ich konnte es in der Zwischenzeit selber lösen.

01.
@echo off & setlocal 
02.
set "Anrufe=D:\ANRUFE.TXT" 
03.
set "AnrufeTemp=D:\ANRUFETEMP.TXT" 
04.
set "CTILOG=D:\CTILOG.TXT" 
05.
set "Antwort=D:\antwort.txt" 
06.
set "variable=n" 
07.
 
08.
:Loop 
09.
IF exist     %Anrufe% 	for /f "tokens=1-10 delims=," %%a in ('findstr /c:", 111" "%CTILOG%"^|findstr /c:",ein"')do >>"%AnrufeTemp%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
10.
IF exist     %Anrufe% 	for /f "tokens=1-10 delims=," %%a in ('findstr /c:", 100" "%CTILOG%"^|findstr /c:",ein"')do >>"%AnrufeTemp%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
11.
IF not exist %Anrufe% 	for /f "tokens=1-10 delims=," %%a in ('findstr /c:", 111" "%CTILOG%"^|findstr /c:",ein"')do >>"%Anrufe%" 	  echo %%a,%%b,%%c,%%d,%%e,%%f 
12.
IF not exist %Anrufe% 	for /f "tokens=1-10 delims=," %%a in ('findstr /c:", 100" "%CTILOG%"^|findstr /c:",ein"')do >>"%Anrufe%" 	  echo %%a,%%b,%%c,%%d,%%e,%%f 
13.
goto :vergleich 
14.
 
15.
:vergleich 
16.
echo %variable% >%antwort% 
17.
comp  %AnrufeTemp% %ANRUFE%<%antwort% 
18.
if  %ERRORLEVEL%==1 goto :Ungleich 
19.
if  %ERRORLEVEL%==0 del /q %AnrufeTemp% goto :Loop 
20.
sleep 5 
21.
goto :Loop 
22.
 
23.
:Ungleich 
24.
type nul > %Anrufe% 
25.
for /f "tokens=1-10 delims=," %%a in ('findstr /c:", 111" "%CTILOG%"^|findstr /c:",ein"')do >>"%Anrufe%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
26.
for /f "tokens=1-10 delims=," %%a in ('findstr /c:", 100" "%CTILOG%"^|findstr /c:",ein"')do >>"%Anrufe%"  echo %%a,%%b,%%c,%%d,%%e,%%f 
27.
del /q %AnrufeTemp% 
28.
goto :sort 
29.
 
30.
:Sort 
31.
xcopy anrufe.txt /y d:\projekte 
32.
sort.exe d:\projekte\anrufe.txt /o d:\projekte\anrufe.txt 
33.
goto :Loop
Über ergänzende Kommentare zu der Lösung würde ich mich dennnoch freuen, da ich gerne verstehen würde wo das Problem lag.

Mit freundlichen Grüßen

barkingdog
Bitte warten ..
Ähnliche Inhalte
Python

GTK Button führt funktion nur mit fehlermeldung aus

Frage von deinernstjetztPython

Hallo, in meinem GTK Programm (in Python)(GTK+3) werden in einem Teil einige Daten abgefragt, diese sollen dann über eine ...

PHP

PHP - unique-array() und sort()

gelöst Frage von ThomasXYZPHP14 Kommentare

Hallo zusammen, ich bin gerade leicht am verzweifeln und finde nicht so recht die Lösung. Ich bekomme per Datenbankabfrage ...

Windows Server

Freigabe führt nicht zur Schreib-Berechtigung

gelöst Frage von ElmaCxWindows Server11 Kommentare

Hallo miteinander, ich bin seit 2 Tagen an einer Berechtigungs Problematik zu Gange, bei welcher ich die Lösung nicht ...

Windows 10

"Installationsfehler" führt zu einer Endlosschleife

Frage von ToygunWindows 105 Kommentare

Ein Kunde hat gestern abend das Windows 10 creators an einem seiner Clients gestartet. Seit heute morgen bleibt er ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

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 3 TagenGoogle 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 ...

Heiß diskutierte Inhalte
Windows Server
Standortvernetzung zu einem Strato VServer (Windows)
Frage von matzefratze81Windows Server10 Kommentare

Moin, ich komme aus einem Enterprise-Umfeld und habe den Fehler gemacht, dass ich mich auf ein kleines Unternehmen eingelassen ...

Grafikkarten & Monitore
4k EIZO Monitor, Fernseher und Splitter
Frage von LerxxeyGrafikkarten & Monitore9 Kommentare

Hallo Zusammen, vielleicht könnt ihr mir bei einem Problem helfen wo ich einfach nicht mehr weiterkomme Und zwar haben ...

Microsoft Office
Freitagsfrage? Excel und CSV - Import statt öffnen
gelöst Frage von KraemerMicrosoft Office7 Kommentare

Moin zusammen, entweder fallen mir heute nicht die richtigen Wörter für Google ein, oder es geht schlicht nicht. Gibt ...

Entwicklung
Batch - Überprüfung
gelöst Frage von apex.predator24Entwicklung6 Kommentare

Hallo Zusammen Gibt es eine Möglichkeit, einen Prozess im TaskManager über eine Batch-Datei zu überprüfen ob dieser läuft oder ...