none
Aufgabenplanung löst Variable nicht auf RRS feed

  • Frage

  • Hi Community,

    ich habe eine Batchdatei in welcher ich das heutige Datum formatiere und in eine Variable %DATUM% schreibe. Wenn ich die Batchdatei in einer Konsole von Hand ausführe wird die Variable korrekt aufgelöst, selbiges Skript über den Aufgabenplaner ausgeführt lässt das Datum im Dateinamen einfach weg. In einem anderen Skript in der Aufgabenplanung habe ich die selbe Variable und dort wird sie aufgelöst, der einzige Unterschied ist, dass die Variable hier nicht innerhalb eines IF EXIST Block und auch nicht innerhalb einer FOR Schleife steht:

    echo off
    
    SET DATUM=%DATE:~6,4%.%DATE:~3,2%.%DATE:~0,2%
    SET APP_PATH="C:\Program Files\7-Zip"
    SET FORFILES="C:\Windows\System32\forfiles.exe"
    SET SRC=G:\users\AGENDA
    SET DEST=G:\DB_BACKUPS\AGENDA_USR
    
    %FORFILES% /M *.DSI /P "%SRC%" /D 0 /C "cmd /c copy @path %DEST%"
    
    IF EXIST *.DSI (
    	FOR %%i in ("%DEST%\*.DSI") do (	
    		%app_path%\7z.exe a -tzip -pkadb1111 %%i_%DATUM%.zip %%i
    		del /F /Q %%i
      	)
    ) ELSE (
    	EXIT /B
    )
    
    %FORFILES% /M *.ZIP /P "%DEST%" /D -60 /C "cmd /c del /Q @path"

    Warum behandelt die Aufgabenplanung Variablen anders als ein Konsoleninterpreter?

    Thx & Bye Tom

    Mittwoch, 20. Mai 2015 11:59

Antworten

  • Hallo Thomas,

    ich vermute nicht, dass es sich um ein Problem mit dem Skript selbst handelt, wenn es in der Eingabeaufforderung funktioniert. 

    Neulich hatten wir einen ähnlichen Fall. Hier wurde mithilfe der Aufgabenplanung eine Verknüpfung des Skriptes aufgerufen und nicht das Skript selbst. Letztendlich wurde das Problem dadurch gelöst, dass der Ordner-Kontext geändert wurde.

    Falls es sich bei dir auch um eine Verknüpfung handelt, kannst du den Ordner-Kontext folgendermaßen ändern: 

    Öffne den Speicherort des Skriptes, welches in der Aufgabenplanung eingebunden ist. Klicke hiernach mit rechts auf die Datei und öffne die Eigenschaften. Hier sollte unter Starten in der Pfad zu dem Ordner vermerkt sein, in welchem das Skript selbst liegt (nicht die Verknüpfung).

    Sollte das bei dir nicht funktionieren, wäre es eventuell hilfreich, wenn du uns noch sagen könntest, ob die Ausführung des Skriptes funktioniert, wenn du es mit einem Doppelklick startest.

    Viele Grüße,
    Robin O. König
    TechNet Deployment Hotline

    TechNet Deployment-Hotline

    Disclaimer:

    Bitte haben Sie Verständnis dafür, dass wir hier auf Rückfragen gar nicht oder nur sehr zeitverzögert antworten können.
    Bitte nutzen Sie für Rückfragen oder neue Fragen den telefonischen Weg über die TechNet Deployment Hotline: http://technet.microsoft.com/de-de/ff959330

    TechNet Deployment-Hotline
    Telefon: 0800-6087338*
    Email: msdn-technet-support@escde.net

    * 16:00 – 18:00 Uhr (außer an bundeseinheitlichen Feiertagen). Kostenfrei aus dem dt. Festnetz, Mobilfunknetz ggfs. abweichend. Anrufer aus Österreich und der Schweiz können die Telefon-Hotline aus technischen Gründen über +49 721 693 7233 zum Tarif für Auslandsverbindungen des jeweiligen Telefonanbieters erreichen.
    Es gelten Nutzungsbedingungen, Hinweise zu Markenzeichen sowie die allgemein gültigen Informationen zu Datenschutz und Cookies. Bitte beachten Sie auch die gesonderten Nutzungsbedingungen für die Deployment-Hotline.

    Mittwoch, 20. Mai 2015 12:23
    Moderator