Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Prüfen ob und wie eine TXT vorhanden ist und entsprechend reagieren

Frage Entwicklung Batch & Shell

Mitglied: Beatzler

Beatzler (Level 1) - Jetzt verbinden

31.05.2009, aktualisiert 01:24 Uhr, 3458 Aufrufe, 9 Kommentare

Halli Hallo,

ich brauchte mal wieder ein wenig unterstützung von euch und würde gern ein feedback haben ob ich so einigermaßen gut davor bin oder ob und wenn ja wie ihr das am besten lösen würdet..... Vielen Dank im vorraus !

Habe ein Tool welches alle paar Minuten div. Meldungen in eine TXT Datei schreibt. Leider sind diese TXT teilweise unvollständig da das Tool diese zu schnell generiert hat. Nachdem sie generiert wurden wird der inhalt per E-Mail verschickt. Wurde eine txt unvollständig oder falsch generiert wird diese von der gleichen bat wenige Sekunden später nochmal generiert. Dies kann dann auch noch nicht 100 % stimmen sodass nun zwar mehr in der Meldung steht aber leider immer noch nicht alles. Das ganze ist sehr wichtig und müsste von daher so schnell wie es nur geht ( eigentlich sobald die textdatei erstellt wurde ) verschickt werden. Da nun aber leider nicht jedesmal der gesammte Text komplett in diese Textdatei geschrieben wird aber nur der vollständige Text verschickt werden soll habe ich nun ein Problem.....

Mein Hauptproblem ist die Zeit! ich würde ungern nach der ersten Generierung jedesmal einen festen Zeitwert abwarten wollen da man leider auch nicht sagen kann wie schnell die Meldung komplett vorliegt meist jedoch weit unter 10 sek. es kann aber auch schonmal länger dauern leider, von daher möchte ich nun ungern jedesmal 20 sek vor der Versendung warten um sicherzugehen das die Meldung komplett ist obwohl sie das schon nach 1 sek war ....

Die Meldungen unterscheiden sich enorm sodass man nicht anhand von bestimmten Wörtern oder Längen irgendwas abschätzen könnte Aber eine TXT umfasst immer nur eine Zeile mit max 200 Zeichen

Wie löse ich dieses Problem am besten?

Ich dachte mir das ich danach folgendermaßen weiterarbeite:

Innerhalb der Bat welche die TXT erzeugt ganz am Anfang:

- Überprüfen ob TXT schon vorhanden ist = Wie macht man das am besten ?
- Wenn ja dann erstelle eine neue txt (unter neuem Namen) & führe den normalen Bat ablauf zur Erstellung durch >> danach GOTO CHECK
- Wenn TXT noch nicht vorhanden = normale TXT Erstellung starten

:CHECK >>>> Check überprüft nun ob die Dateien gleich sind,
fc datei1.txt datei2.txt >nul && goto GLEICH
ECHO Die Dateien unterscheiden sich !
PAUSE
:GLEICH
ECHO Die dateien sind gleich !
PAUSE

- Sind die dateien unterschiedlich versende nur die letze Datei ...
- Dies wird solange gemacht bis die Meldung komplett ist und die Datei verschickt werden kann



Ich weiß hört sich nun alles bestimmt ziehmlich komisch an aber ich hoffe ihr versteht einigermaßen was ich meine....


Wäre für jeden Tipp / Hilfe sehr dankbar !

Mit freundlichen Grüßen Beatzler
Mitglied: LotPings
31.05.2009 um 08:36 Uhr
Zitat von Beatzler:
Ich weiß hört sich nun alles bestimmt ziemlich komisch an aber ich hoffe ihr versteht einigermaßen was ich meine....

Dafür das du nicht geschrieben hast, was dein eigentliches Problem ist, hast du verdammt viele Worte gebraucht.

Ich nehme mal an das du so etwas meinst
01.
If exist Datei ( 
02.
  Echo Datei existiert 
03.
) Else ( 
04.
  Echo Datei existiert nicht 
05.
)
Frohe Pfingsten!
Bitte warten ..
Mitglied: Beatzler
31.05.2009 um 12:28 Uhr
Hey,

vielen Dank für deine Antwort ! Nun bekomme ich zumindest diese Abfrage schonmal hin.

Mein Problem ist das ich nicht weiß wie ich am besten die vollständige TXT verschicke also wie ich mir irgendwie was basteln kann das er solange wartet bis die Meldung vollständig ist. Man könnte natürlich nun sich eine BAT schreiben welche 10 sek. lang prüft welches TXT nun das "beste" ist und dieses verschickt. Aber jedesmal 10 sek sollte es eigentlich nicht. Hätte da nicht noch jemand ne idee nen tipp ?

Mit freundlichen Grüßen Beatzler
Bitte warten ..
Mitglied: LotPings
31.05.2009 um 17:26 Uhr
Zitat von Beatzler:

Hätte da nicht noch jemand ne idee nen tipp ?

Da du schon wieder, mit vielen Worten, vermieden hast zu sagen was dein eigentlicher Batch macht,
nein und jetzt hab ich auch keine Lust mehr.
Einen schönen Pfingstsonntag noch
Bitte warten ..
Mitglied: miniversum
01.06.2009 um 13:48 Uhr
Hier mal eine ungetestete Idee wie du kontrollieren kannst ob sich die Datei verändert hat. Geprüft wird dabei das Datum des letzten Schreibzugriffs. Geprüft wird dann im 1 Sekunden Raster. Hier kannst du die Zeit auch anpassen.:
01.
set "%datei%=Datei.txt" 
02.
FOR /F "tokens=2 delims= " %%i in ('dir /TW "%datei%"|find "%datei%"') do set zeit1=%%i 
03.
:loop 
04.
ping -n 1 localhost >NUL 
05.
FOR /F "tokens=2 delims= " %%i in ('dir /TW "%datei%"|find "%datei%"') do set zeit2=%%i 
06.
if "%zeit1%" neq "%zeit2%" ( 
07.
set "zeit1=%zeit2%" 
08.
goto:loop 
09.
)
Bitte warten ..
Mitglied: 78632
01.06.2009 um 13:55 Uhr
Geprüft wird dann im 1 Sekunden Raster.
Alles schön und gut, aber warum ein so kurzes Prüfintervall, wenn die Zeitinformation beim Dir-Befehl nur bis zur Minute geht? Oder fehlen mir die Sekundeninformationen? Dann verrate mir doch mal bitte, wie ich die erhalte.
Bitte warten ..
Mitglied: miniversum
01.06.2009 um 14:04 Uhr
wie geschrieben war das eine ungetestete idee.
Dan must dus halt beim fc belassen zum vergleich
Bitte warten ..
Mitglied: 78632
01.06.2009 um 14:10 Uhr
Ich war nicht der Fragesteller mit dem Problem, sondern hatte angenommen, du wüsstest was, das ich nicht weiß
Bitte warten ..
Mitglied: Beatzler
01.06.2009 um 14:13 Uhr
Hey,

vielen Dank für eure Hilfe. Das war auch schon ein sehr guter Ansatz ! Habe ich es nun richtig verstanden das die Zeitinformationen wann die Datei erstellt / verändert wurde nur Minutenweise gespeichert werden ?

Mit freundlichen Grüßen Beatzler
Bitte warten ..
Mitglied: 78632
01.06.2009 um 14:16 Uhr
Die Zeitinformation wird in 100 Nanosekunden-Intervallen gespeichert. Nur die Information, die der DIR-Befehl zur Anzeige bringt, hört bei der Minutenangabe auf.
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Microsoft Office
gelöst ACCESS Prüfen ob IP Adresse in IP Range vorhanden (6)

Frage von thomas1972 zum Thema Microsoft Office ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Webentwicklung
gelöst HTML Output in eine txt Datei mit VisualBasicScript (2)

Frage von coca22COCA zum Thema Webentwicklung ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...