25335
Goto Top

Infos über Skript für Shutdown und Start eines Programmes gesucht

Hallo zusammen,

ich habe folgendes Problem.
Mein Abteilungsleiter hat mir folgendes Skript vorgelegt und gesagt, dass ich nach der Ursache suchen soll, warum diese in einem geplanten Task nicht funktioniert.


FOR /F "tokens=1" %%A IN ('TLIST ^| FIND /I "ProTime_Chipkar"') DO kill -f %%A
ping 1.1.1.1 -n 60
copy \\ace-dt-00305\ProTime_Aussenstelle\ProTime_Aussenstelle.mde\\acehvsql\ProTime\ProTime_Aussenstelle.mde
ping1.1.1.1 -n 1200
start c:\programme\Compart\Chipkarte\ProTime_Chipkarte.exe


Ich weis, dass hier ein Zeiterfassungsprogramm geschlossen wird, danach 60 Sekunden verstreichen und danach eine Sicherung der Daten stattfindet. Danach ist nochmal eine Warteschleife, bei der ich aber nicht weiß was gemacht wird...
Zum Schluss, startet das Zeiterfassungsprogramm wieder.

Das Skript ist als Batchfile abgespeichert und soll über einen geplanten Task jeden morgen laufen...


Kann der Fehler hier liegen?

(TLIST ^| FIND /I "ProTime_Chipkar"') [eventuell ProTime_Chipkarte.exe?]


Da ich das Skript nicht auf dem Rechner testen kann bin ich ziemlich ahnungslos, was das ganze anbelangt, weil ich noch nie was mit Skripten zu tun hatte.


Gruß, Daniel

Content-Key: 26584

Url: https://administrator.de/contentid/26584

Ausgedruckt am: 19.03.2024 um 09:03 Uhr

Mitglied: Dani
Dani 21.02.2006 um 17:52:25 Uhr
Goto Top
Hi,
mal ne Frage, wo soll der copy Befehl die Datei hinkopieren. Oben steht zwar die Sourcedatei aber nicht der Zielordner!!

Gruß
Dani
Mitglied: Biber
Biber 21.02.2006 um 18:48:58 Uhr
Goto Top
Moin Xecutor,

so viele Ursachen kann es nicht haben.. wenn man/frau wüsste, ob es denn nicht läuft ode nicht mehr läuft, wäre die Diagnose einfacher..

Ich versuch mal kurz die paar Zeilen zu kommentieren:

FOR /F "tokens=1" %%A IN ('TLIST ^| FIND /I "ProTime_Chipkar"') DO kill -f %%A
:: in der ersten Zeile wird ein Utility namens TList.exe aufgerufen, also ein Progrämmchen,
:: das die aktiven Task bzw. Prozesse auflistet.
:. Wenn da mit Find.exe eine Zeile gefunden wird, in der "ProTime_Chipkar" steht,
:: dann wird die Kill.exe aufgerufen, die diesen Prozess beendet.
:: Ob da nun ein Prozess gefunden wird oder nicht und ob der beendet werden kann oder nicht,
::scheint dem Verfasser und dem Batch schnurzpiepegal zu sein..
:: der Batch geht unabhängig von Erfolg oder Fehelr weiter.

ping 1.1.1.1 -n 60
:: ...soll eine Wartepause sein.. na ja ein "ping localhost -n 60 >nul" hätte ja noch Charme..

copy \\ace-dt-00305\ProTime_Aussenstelle\ProTime_Aussenstelle.mde\\acehvsql\ProTime\ProTime_Aussenstelle.mde
::hier soll die datei ...."ProTime_Aussenstelle.mde" von A nach B kopiert werden..
::aber das Leerzeichen zwischen "Quelle" und "Ziel" (beginnend wieder mit "\\" fehlt.

ping1.1.1.1 -n 1200
:: siehe oben
start c:\programme\Compart\Chipkarte\ProTime_Chipkarte.exe
:: hier soll die ProTime_Chipkarte-Anwendung "wieder" gestartet werden..
:. unabhängig davon, ob sie vorher nicht, 1x oder 3x lief.

Ist also ein grottenschlechtes Batch-Beispiel.
Befehle werden zwar nacheinander ausgeführt, aber nur aneinandergereiht.. keine Programmlogik, die von Erfolg oder Fehlern gesteuert wird.

Etwas glattgezogen und wartbar (ohne Fehlerbehandlung):
Set "QuellServer=\\ace-dt-00305"
Set ZielServer=\\acehvsql"
Set "MDEPfadUndDatei=\ProTime_Aussenstelle\ProTime_Aussenstelle.mde"
Set "ProTimeExe=c:\programme\Compart\Chipkarte\ProTime_Chipkarte.exe"
FOR /F "tokens=1" %%A IN ('TLIST ^| FIND /I "ProTime_Chipkar"') DO kill -f %%A
ping localhost -n 60 >nul && REM Eine Minute warten auf Godot
copy %QuellServer%\%MDEPfadUndDatei% %QuellServer%\%MDEPfadUndDatei% >nul
IF Errorlevel 1 Echo %date% %time% Fehler beim Kopieren! Errorlevel: %errorlevel% >>logdatei.log
ping localhost -n 1200 && Rem Jetzt warten auf Feierabend... 20 Minuten lang
If Not Exist "%ProTimeExe%" echo %date% %time% "%ProTimeExe%" Nicht gefunden! >>logdatei.log
If Exist "%ProTimeExe%" Start "%ProTimeExe%"

HTH Biber
Mitglied: 25335
25335 23.02.2006 um 08:44:05 Uhr
Goto Top
Hallo Biber,

danke für deine ausführliche Hilfe. Ich hab es zum laufen gebracht ;0)
Mitglied: Biber
Biber 23.02.2006 um 09:05:03 Uhr
Goto Top
Danke für die Rückmeldung, Xecutor,

dann wären meine zwei Bitten an Dich noch:
a) kennzeichne bitte den Beitrag als "gelöst" der Ordnung halber
b) schicke mal eine PN an einen der beiden Bereichs-Mods apewee oder tritter, dasss die den Beitrag nach "Batch & Shell" verschieben.. da ist er eigentlich besser aufgehoben.

Danke und schönen Tag
Biber