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 xls nach aktuellem Datum auslesen und email senden

Mitglied: michi-ffm

michi-ffm (Level 1) - Jetzt verbinden

17.01.2017 um 12:44 Uhr, 1051 Aufrufe, 14 Kommentare, 4 Danke

Hallo Leute,

ich hänge schon seid langem an diesem Skript. Da meine Batch Kenntnisse miserabel sind brauche ich eure Hilfe.

Jeden Tag Aktualisieren sich 3 xls Datei die in einem Verzeichnis liegen z.b. "14564.xls" , "39876.xls" und "57863.xls" im Ordner "Kunden"
Die Dateinamen ändern sich nie! jeglich nur der Änderungsdatum.

So meine Herausforderung ist das ich eine Batch Datei brauche die prüft, ob diese 3 Dateien auch dem aktuellen Datum entsprechen!
Und mir dann eine Protokoll Email sendet!

Kann mir da jemand evtl weiterhelfen?

Mit freundlichen Grüßen
Michael

Mitglied: 131381
17.01.2017 um 13:02 Uhr
01.
@echo off & setlocal
02.
for %%a in ("C:\Ordner\Kunden\*.xls") do (
03.
    for /f "tokens=1" %%b in ("%~ta") do (
04.
        if "%%b" == "%date%" (
05.
            echo Datum von %%a ist von heute.
06.
        ) else (
07.
            echo ACHTUNG: Datum von %%a entspricht nicht dem heutigen.
08.
       )
09.
    )
10.
)
Das ganze per mail senden kannst du dann mit dem Tool deiner Wahl.

Gruß mik
Bitte warten ..
Mitglied: michi-ffm
17.01.2017 um 13:13 Uhr
Zunächst Vielen lieben Dank für deine schnelle Rückmeldung

Leider gibt er mir eine Fehlermeldung die ich nicht lesen kann!
pause am Ende vom skript lässt die Konsole nicht offen!

01.
@echo off & setlocal
02.
for %%a in ("C:\Users\Michael\Desktop\1\*.xls") do (
03.
    for /f "tokens=1" %%b in ("%~ta") do (
04.
        if "%%b" == "%date%" (
05.
            echo Datum von %%a ist von heute.
06.
			echo.
07.
        ) else (
08.
            echo ACHTUNG: Datum von %%a entspricht nicht dem heutigen.
09.
			echo.
10.
       )
11.
    )
12.
	
13.
)
14.
pause
15.

16.

17.
set SMTP=*
18.
set SUBJECT=Testmailing 
19.
set BODY=Hier wurde die Nachricht kommen
20.
set FROM=Powershell@%computername% 
21.
set TO=*****
22.
echo ich sende eine mail 
23.

24.
powershell -ExecutionPolicy Unrestricted -c "Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body '%BODY%' -SmtpServer '%SMTP%' -From '%FROM%'"
A. Wie kann ich diese beiden Codes zusammenfügen? Wie gesagt batch Kenntnisse == 0
B. Der soll jedoch nicht alle xls auslesen nur die 3 genannten!
Bitte warten ..
Mitglied: 131381
17.01.2017, aktualisiert um 13:45 Uhr
Wenn du sowieso Powershell verwendest warum machst du es nicht gleich damit
01.
@echo off & setlocal
02.
set "SMTP=smtp.server.de"
03.
set "SUBJECT=Testmailing"
04.
set "FROM=Powershell@%computername%"
05.
set "TO=*****"
06.
powershell -Executionpolicy ByPass -Command "$report = (gci 'C:\Users\Michael\Desktop\1\*' -Include '14564.xls','39876.xlsl','57863.xls' | %%{\"Datum für $($_.Name) : $(@{$true='OK';$false='FEHLER'}[$_.LastWriteTime.Date -eq (get-date).Date])\"}) -join [environment]::Newline; Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body $report -SmtpServer '%SMTP%' -From '%FROM%'"
Wie gesagt batch Kenntnisse == 0
Das lässt sich durch lesen von Dokus ändern...
Bitte warten ..
Mitglied: Pjordorf
17.01.2017 um 13:25 Uhr
Hallo,

Zitat von michi-ffm:
pause am Ende vom skript lässt die Konsole nicht offen!
Dann diese Batch in ein schon geöffnetes Kommandozeilefenster (CMD Window) ausführen (per Hand). Dann bleibt dir auch etwas zum lesen.

A. Wie gesagt batch Kenntnisse == 0
Warum machst du das dann? Alles in einer Batchdatei packen oder halt von der ersten die 2te Bachtdatei aufrufen. CALL währe eine möglichkeit.

Gruß,
Peter
Bitte warten ..
Mitglied: michi-ffm
17.01.2017 um 13:41 Uhr
Hast schon Recht! Nicht nachgedacht!
Jedoch wollte ich eigentlich die Batch Datei in die Aufgabenplanung einbinden.

Der Code vorher hat mir jedoch eine Mail senden können!
Leider gibt er mir nun folgende Fehlermeldung siehe Anhang:
unbenannt - Klicke auf das Bild, um es zu vergrößern
Bitte warten ..
Mitglied: 131381
17.01.2017 um 13:45 Uhr
Sorry kleiner Fehler, ist oben korrigiert.
Bitte warten ..
Mitglied: michi-ffm
17.01.2017 um 13:48 Uhr
Hut ab!
Respekt Vielen Dank für Ihre Bemühungen!

Meine Kenntnisse liegen leider nur in PHP und mit Batch befasse ich momentan etwas!
Bitte warten ..
Mitglied: 131381
17.01.2017 um 14:53 Uhr
Na dann fehlt ja nur noch ein gelöst hinten dran.
Bitte warten ..
Mitglied: michi-ffm
17.01.2017 um 15:08 Uhr
eine Sache noch

Diese Code funktioniert einwandfrei:
01.
@echo off & setlocal
02.
set "SMTP=smtp.server.de"
03.
set "SUBJECT=Testmailing"
04.
set "FROM=Powershell@%computername%"
05.
set "TO=*****"
06.
powershell -Executionpolicy ByPass -Command "$report = (gci 'C:\Users\Michael\Desktop\1\*' -Include '14564.xls','39876.xlsl','57863.xls' | %%{\"Datum für $($_.Name) : $(@{$true='OK';$false='FEHLER'}[$_.LastWriteTime.Date -eq (get-date).Date])\"}) -join [environment]::Newline; Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body $report -SmtpServer '%SMTP%' -From '%FROM%'"
Besteht die Möglichkeit mehrere Pfade zu prüfen? jedoch die gleichen Dateien

z.b.
01.
(gci 'C:\Users\Michael\Desktop2\1\*' -Include '14564.xls','39876.xlsl','57863.xls'
02.
(gci 'C:\Users\Michael\Desktop3\1\*' -Include '14564.xls','39876.xlsl','57863.xls'
03.
(gci 'C:\Users\Michael\Desktop4\1\*' -Include '14564.xls','39876.xlsl','57863.xls'
Bitte warten ..
Mitglied: 131381
17.01.2017 um 15:32 Uhr
01.
@echo off & setlocal
02.
set "SMTP=smtp.server.de"
03.
set "SUBJECT=Testmailing"
04.
set "FROM=Powershell@%computername%"
05.
set "TO=*****"
06.
powershell -Executionpolicy ByPass -Command "$report = (gci '\\192.168.168.1\Kunde\*','\\192.168.168.2\Kunde\*','\\192.168.168.3\Kunde\*' -Include '14564.xls','39876.xlsl','57863.xls' | %%{\"Datum für $($_.Fullname) : $(@{$true='OK';$false='FEHLER'}[$_.LastWriteTime.Date -eq (get-date).Date])\"}) -join [environment]::Newline; Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body $report -SmtpServer '%SMTP%' -From '%FROM%'"
Bitte warten ..
Mitglied: michi-ffm
17.01.2017 um 15:53 Uhr
Sorry falsch formuliert:

01.
(gci '192.168.168.01\Kunde\*' -Include '14564.xls','39876.xlsl','57863.xls'
02.
(gci '192.168.168.02\Kunde\*' -Include '14564.xls','39876.xlsl','57863.xls'
03.
(gci '192.168.168.03\Kunde\*' -Include '14564.xls','39876.xlsl','57863.xls'
Bitte warten ..
Mitglied: 131381
17.01.2017, aktualisiert um 16:01 Uhr
Oh man, wie wär's mal mit Doku lesen,
https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powe ...

s. letztes Kommentar ..

i'm out now.
Bitte warten ..
Mitglied: michi-ffm
17.01.2017 um 16:10 Uhr
Trotzdem vielen vielen Dank
Sehr nett von ihnen
Bitte warten ..
Mitglied: 131381
LÖSUNG 17.01.2017, aktualisiert um 16:54 Uhr
Keine Ursache, dann noch das Gelöst dran pappen und gut is.

Gruß mik

p.s. Du kannst hier die Leute ruhig dutzen, so förmlich handhaben wir das hier nicht .
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
(Batch) Datum Sortier-Mechanismus
gelöst Frage von clragonBatch & Shell19 Kommentare

Hallo zusammen. Ich bin schon etwas länger am Batch schreiben, und war schon oft uneingeloggt hier, und jetzt hab ...

Exchange Server

"Send on Behalf anstelle" von "Send as"

gelöst Frage von arduinoExchange Server3 Kommentare

Hallo Wir haben auf unserem Exchange 2010 verschiedene Shared Mailboxen, die von Usern mit der Send-as Berechtigung genutzt werden. ...

Batch & Shell

Per Batch in Aufgabeplanung XLS in CSV umwandeln

Frage von dtbsysBatch & Shell21 Kommentare

Hallo und guten Morgen, leider habe ich in den zahlreichen Beiträgen zu dem Thema nichts passendes gefunden. Ich bekomme ...

Windows Server

Gesperrte XLS-Datei

Frage von MiStWindows Server2 Kommentare

Hallo, ich habe hier auf unserem Server eine XLS-Datei, die von einem User, nennen wir ihn UserA, in Benutzung ...

Neue Wissensbeiträge
Viren und Trojaner
Trend Micro WFBS 10 SP1 Patch 2185
Tipp von Abramelin vor 14 StundenViren und Trojaner1 Kommentar

Hi, Hab gerade gesehen das Patch 2185 für TM WFBS 10 SP1 erschienen ist! Werde mal Morgen den Patch ...

Viren und Trojaner

Neuer Virus lässt Windows im abgesicherten Modus starten

Tipp von transocean vor 17 StundenViren und Trojaner4 Kommentare

Moin, lest selbst. Grüße Uwe

Sicherheit
Böser Bug in Domänenkennwortrichtlinie!
Information von DerWoWusste vor 22 StundenSicherheit2 Kommentare

Ich spiegele mal Borncity: In Kürze: Nutzt Ihr eine Domänen-Kennwortrichtlinie der herkömmlichen Art (keine PSO-Richtlinie)? Ja? Und plant Ihr, ...

Windows Tools
7-Zip v19.0 MSI silent uninstall
Tipp von Dirmhirn vor 1 TagWindows Tools5 Kommentare

Hi, ich versuchte grade 7-Zip v19.0 MSI silent zu deinstallieren. mit msiexec /x stürzt mir immer der Explorer ab. ...

Heiß diskutierte Inhalte
Sicherheitsgrundlagen
Sperrung der IMAP Aktivierung: GMail für Apple Mail - in einer Schul-Google-Suite
Frage von lazylandSicherheitsgrundlagen22 Kommentare

Hallo, ich würde mich sehr über Eure Einschätzung und Rat freuen: Der Administrator einer Google Suite (Schule) löscht aus ...

Windows 8
Snipping Tool Alternative für bzw ab Windows 8.1
gelöst Frage von schmitziWindows 814 Kommentare

Hallo, ich suche für Windows 8.1 eine Alternative für das bordeigene Snipping Tool von MS, vielleicht weiss ja jemand ...

Windows 10
Win10 Remote Desktop User anders
Frage von ludibubiWindows 1014 Kommentare

Folgende Situation: Auf meinem Rechner (Win10) in der Firma (Domänen-Netzwerk) starte ich abends bevor ich gehe einen Newsletterversand. Damit ...

Off Topic
Gesetzliche Gewährleistung Privatkunde
gelöst Frage von justus.magnoldOff Topic12 Kommentare

Hallo liebes Forum, ich habe da eine Frage zur Gewährleistung. Ich habe einem Privatkunden im Mai 2018 ein Lenovo ...