Jump to content
Sign in to follow this  
Sauerkraut

Batch Script - IF Funktion mit Wochentag Abfrage

Recommended Posts

Guten Tag =)

 

ich versuche das erste mal eine Batch Datei zu schrieben die es mir ermöglicht regelmäßig an einem Bestimmten Tag in der Woche (Montag) ein Log Programm zu schließen und Dateien zu verschrieben. Die Tagesabfrage, das Schließen sowie das verschieben der Dateien funktioniert wunderbar nur nicht die IF Funktion. Auch wenn nicht der Montag ist wird das gewünschte Programm geschlossen und die Dateien verschoben.

Ich komme mit ausprobieren nicht mehr weiter und hoffe das Ihr mir sagen könnt, was ich falsch gemacht habe.

 

Hier sind die Befehle

@echo off

:false
echo falsch

REM Ermittlung des Tages
for /F "skip=2 tokens=2-4 delims=," %%A in ('WMIC path Win32_LocalTime Get DayOfWeek /Format:csv') do set daynumber=%%A  
echo %daynumber%


if "%daynumber%"=="1" goto true
if "%daynumber%"=="2" goto false
if "%daynumber%"=="3" goto false
if "%daynumber%"=="4" goto false
if "%daynumber%"=="5" goto false
if "%daynumber%"=="6" goto false
if "%daynumber%"=="7" goto false


:true
echo richtig
REM Programm schließen
TASKKILL /IM weather.exe /F /T

REM Verschiebt Dateien mit der endung .xlsx
move C:*.xlsx D:\hierhinverschieben

REM Programm starten
start "" "C:\Program Files (x86)\tools\weather.exe"


pause >nul

 

Ich möchte mich schonmal für eure Hilfe bedanken =)

Share this post


Link to post
Share on other sites

Moin,

 

deine Schleife sieht auch etwas seltsam aus. "false" heißt, es soll nichts passieren, verzweigt aber zum Beginn des Skripts. Sinnvoller wäre es doch dann, das Skript zu beenden oder an eine Stelle hinter "true" zu springen.

 

Hier habe ich vor Jahren mal sowas in der Art gepostet, vielleicht hilft das weiter. Dort ist auch keine WMIC-Abfrage drin, die nicht nur viel Zeit kostet, sondern auch wegen der nötigen Berechtigungen heikel ist.

 

[Monitoring: Ping-Checks zeitabhängig | faq-o-matic.net]
https://www.faq-o-matic.net/2012/05/07/monitoring-ping-checks-zeitabhngig/

 

Ansonsten wäre die Empfehlung, derartige Dinge per PowerShell anzugehen. Batch ist doch sehr eingeschränkt, sobald etwas mehr Logik in einer Aufgabe steckt.

 

Gruß, Nils

 

Share this post


Link to post
Share on other sites
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte überlege Dir, ob es nicht sinnvoller ist ein neues Thema zu erstellen.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Werbepartner:



×
×
  • Create New...