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

Batch soll Datum aus File auslesen.

Frage Entwicklung Batch & Shell

Mitglied: chavez089

chavez089 (Level 1) - Jetzt verbinden

17.11.2010 um 09:38 Uhr, 4547 Aufrufe, 8 Kommentare

Lese hier schon länger mit, habe nun auch eine Frage.

Per Batch (Win XP) wird jeden Tag der Inhalt eines Directories in eine Datei geschrieben. In diesem Directory stehen Log Files von einer Datensicherung.
Das neueste Logfile mit Datum steht immer oben.

Ich möchte nun automatisch jeden Tag einmal abchecken lassen, ob die Logfiles für den aktuellen Tag angelegt worden sind, also ob die Sicherung gelaufen ist (wenn die Sicherung nicht gelaufen ist, wird nämlich kein Logfile angelegt).

Es soll daher das aktuelle Datum vom Rechner mit den Datumseinträgen im Logfile verglichen werden, wenn im Logfile kein aktuelles Datum drinsteht, möchte ich mit mit "Blat" eine Email zusenden lassen.

Ich hoffe, ich konnte mich verständlich ausdrücken.
Mitglied: micneu
17.11.2010 um 10:10 Uhr
wie siht denn dein code bis jetzt aus?

daruf können wir dann aufbauen?

wie ist die form deiner logdatei.
wie ist das datum aufgebaut (2010-11-16)?
die angaben könnten helfen.

gruß michael
Bitte warten ..
Mitglied: micneu
17.11.2010 um 10:25 Uhr
habe erstmal einen groben ansatz:

01.
rem getestet auf einem windows 7 ultimate 64bit 
02.
rem @echo off 
03.
set jahr=%date:~-4% 
04.
set monat=%date:~-7,2% 
05.
set tag=%date:~-10,2% 
06.
set sekunden=%time:~-5,2% 
07.
set minuten=%time:~-8,2% 
08.
set stunden=%time:~-11,2% 
09.
 
10.
forfiles /p "C:\Temp" -D %tag%.%monat%.%jahr% /C "cmd /c echo @fname ist seit dem %tag%.%monat%.%jahr% neu" 
11.
pause
und in der datei kannst du dann mit findstr suchen

gruß michael
Bitte warten ..
Mitglied: chavez089
17.11.2010 um 12:01 Uhr
Hallo Michael,

das Logfile ist folgendermassen aufgebaut:

Volume in Laufwerk I: hat keine Bezeichnung.
Volumeseriennummer: EC08-CBE4

Verzeichnis von I:\logs

17.11.2010 07:59 <DIR> ..
17.11.2010 07:59 <DIR> .
17.11.2010 07:30 553 20101116102900.510.eup
17.11.2010 07:30 43.524 20101116102900.510.euc
17.11.2010 07:30 0 20100604114200.502.$$Z
17.11.2010 07:30 0 20100604114200.502.$$$
17.11.2010 07:30 0 20090629105000.502.$$Z
17.11.2010 07:30 0 20090629105000.502.$$$
17.11.2010 07:30 0 20090523103100.502.$$$
17.11.2010 07:30 0 20090523103100.502.$$Z
17.11.2010 07:30 0 20070420094400.502.$$$
17.11.2010 07:30 0 20070420094400.502.$$Z
17.11.2010 07:30 44.082 20101116101500.400.euc
17.11.2010 07:30 3.318 20101116101500.400.eup
17.11.2010 07:30 0 20090410102600.203.$$Z
17.11.2010 07:30 0 20090410102600.203.$$$
17.11.2010 07:30 0 20090425112900.202.$$$
17.11.2010 07:30 0 20090425112900.202.$$Z
17.11.2010 07:30 0 20090503101400.201.$$$
17.11.2010 07:30 0 20090503101400.201.$$Z
17.11.2010 07:30 0 20090913115400.116.$$$
17.11.2010 07:30 0 20090913115400.116.$$Z
17.11.2010 07:30 121.272 20101116105400.100.euc
17.11.2010 07:30 6.873 20101116105400.100.eup
16.11.2010 07:30 5.394 20101115133700.603.euc
16.11.2010 07:30 1.817 20101115133700.603.eup
16.11.2010 07:30 0 20101115115200.502.euc
16.11.2010 07:30 0 20101115115200.502.eup
16.11.2010 07:30 711 20101115094300.412.eup
16.11.2010 07:30 2.790 20101115094300.412.euc

ich benötige nur das erste aktuelle Datum, welches mit dem Rechnerdatum übereinstimmen muss.
Bitte warten ..
Mitglied: pieh-ejdsch
17.11.2010 um 13:03 Uhr
moin zusammen,

dazu genügt nur eine ProduktivZeile

01.
@echo off&setlocal 
02.
set "mailadr=name@domain.de" 
03.
set "mailLogin=Zugang" 
04.
set "mailpw=PW" 
05.
set "server=mail.domain.net" 
06.
set "To=name@domain.de" 
07.
set subject="Keine aktuelle Sicherung vom %date% vorhanden" 
08.
set body="Tagessicherung für %date% nachholen!" 
09.
 
10.
dir I:\logs\* /a-d /tc|findstr /b /c:"%date%" >nul || blat -subject %subject% -body %body% -to %to% -server %server% -f %mailadr% -u %mailLogin% -pw %mailpw%
[Edit] && mit Oder ausgetauscht [/Edit]

Gruß Phil
Bitte warten ..
Mitglied: chavez089
17.11.2010 um 14:15 Uhr
Zitat von pieh-ejdsch:
moin zusammen,

dazu genügt nur eine ProduktivZeile

01.
@echo off&setlocal 
02.
> set "mailadr=name@domain.de" 
03.
> set "mailLogin=Zugang" 
04.
> set "mailpw=PW" 
05.
> set "server=mail.domain.net" 
06.
> set "To=name@domain.de" 
07.
> set subject="Keine aktuelle Sicherung vom %date% vorhanden" 
08.
> set body="Tagessicherung für %date% nachholen!" 
09.
>  
10.
> dir I:\logs\* /a-d /tc|findstr /b /c:"%date%" >nul || blat -subject %subject% -body %body% -to %to% -server %server% 
11.
> -f %mailadr% -u %mailLogin% -pw %mailpw%
[Edit] && mit Oder ausgetauscht [/Edit]

Gruß Phil

Hallo Phil,

Dein Script vergleicht, so wie ich das sehe, nur das Datum, wann die Logdatei erstellt worden ist. Ich bräuchte es aber auf den Inhalt bezogen (also das Datum, das innerhalb des Logfiles steht, z.B. 17.11.2010 07:30 553 20101116102900.510.eup, denn das Logfile wird auch angelegt, wenn kein Backup gemacht wurde.)
Bitte warten ..
Mitglied: bastla
17.11.2010 um 15:30 Uhr
Hallo chavez089 und willkommen im Forum!

Wenn Du tatsächlich nur auf die Inhalte des Logfiles abstellen willst und nach einer Datei vom Typ "eup" mit heutigem Datum suchst, dann als Zeile 10 etwas in der Art (ungetestet):
findstr /e "\.eup" "D:\Das Logfile.log"|findstr /b "%date%" || blat -subject %subject% -body %body% -to %to% -server %server% -f %mailadr% -u %mailLogin% -pw %mailpw%
Grüße
bastla
Bitte warten ..
Mitglied: micneu
17.11.2010 um 16:54 Uhr
ich habe es jetzt so gemacht:

01.
@echo off 
02.
set jahr=%date:~-4% 
03.
set monat=%date:~-7,2% 
04.
set tag=%date:~-10,2% 
05.
set sekunden=%time:~-5,2% 
06.
set minuten=%time:~-8,2% 
07.
set stunden=%time:~-11,2% 
08.
 
09.
forfiles /p "C:\Temp" /M *2.txt -D %tag%.%monat%.%jahr% /C "cmd /c findstr /B /M %tag%.%monat%.%jahr% @file || echo "wurde nicht gefunden oder deine mail"  
10.
pause
hier wirt in der datei auch nochmal das datum gesucht.

gruß michael
Bitte warten ..
Mitglied: chavez089
17.11.2010 um 22:21 Uhr
Zitat von bastla:
Hallo chavez089 und willkommen im Forum!

Wenn Du tatsächlich nur auf die Inhalte des Logfiles abstellen willst und nach einer Datei vom Typ "eup" mit
heutigem Datum suchst, dann als Zeile 10 etwas in der Art (ungetestet):
findstr /e "\.eup" "D:\Das Logfile.log"|findstr /b "%date%" || 
> blat -subject %subject% -body %body% -to %to% -server %server% -f %mailadr% -u %mailLogin% -pw %mailpw% 
> 
Grüße
bastla

Super ich danke sehr für die Lösung, das war genau das was ich brauche!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Bestimmtes Datum von einem file auslesen - Linux
gelöst Frage von lapvikaBatch & Shell9 Kommentare

Hallo zusammen, ich möchte mir in Linux aus der /var/log/messages Dateiinhalte der letzten 24 Stunden anzeigen lassen, alles was ...

Batch & Shell
Batch File zum Auslesen einer Datei
gelöst Frage von Marcel1989Batch & Shell9 Kommentare

Hallo, Ich scheibe momentan ein Anmeldescript als batch mit dem Aufruf von VBS dateien. Hierfür haben wir bereits gruppen ...

Batch & Shell
BATCH Element aus XML-File auslesen
gelöst Frage von pappkameradBatch & Shell9 Kommentare

Hallo liebe Admins, ich habe schon öfter bei euch vorbeigeschaut und ein immer eine Lösung für meine Problemchen gefunden. ...

Batch & Shell
Ini File mit Batch auslesen und weiter verarbeiten
gelöst Frage von ZendaraBatch & Shell2 Kommentare

Hallo, Ich habe ein Problem mit einem Batch File welches mir Variablen aus einem Ini File auslesen und zB. ...

Neue Wissensbeiträge
Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 5 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 6 StundenSicherheit

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1010 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 2 TagenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell22 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen17 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Windows Server
Logging von "gesendeten Nachrichten" auf Terminalservern
gelöst Frage von Z3R0C0MM4N0THiN6Windows Server10 Kommentare

Hallo zusammen, kann mir jemand auf kurzem Wege sagen ob 1) die per Task-Manager (oder damals tsadmin) an Benutzer ...