Toon posts:

[2003] Via scheduled tasks programmas na elkaar starten*

Pagina: 1
Acties:
  • 494 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben wat zaken aan het automatiseren. Ik moet daarom een aantal scheduled tasks dagelijks opstarten.
Ik heb drie tasks. Nu wil ik dat task 2 past start nadat task 1 volledig afgerond is. Hoe kan ik dit voor elkaar krijgen.
1. start 20:00
2. start nadat 1 afgelopen is.
3. start nadat 2 afgelopen is

Het is niet mogelijk om task 2 om 20:15 op te starten aangezien het niet in te schatten is hoe lang task 1 nodig heeft.

  • Poltergeist
  • Registratie: Oktober 2000
  • Laatst online: 08:55
met een batchfiletje. Start /wait. Je maakt een batchfile, met daarin
start /wait <programma>
start /wait <2e programma>
start <3e programma>

En laat dit vanuit de schedeler om 20:00 starten...

[ Voor 80% gewijzigd door Poltergeist op 03-04-2006 21:23 ]


  • the_stickie
  • Registratie: Juli 2001
  • Laatst online: 14-09-2025
AFAIK is dat niet echt mogelijk op die manier. (zoals TS het omschrijft met 3 taken)
Het lijkt me het handigst om 1 batch of script te starten dat alle handelingen mooi afwerkt (kan je ineens deftige logging voorzien :p)
Je kan eens kijken naar allerlei third party software voor batches en automatisering...

edit: duidelijker zo ;)

[ Voor 16% gewijzigd door the_stickie op 03-04-2006 21:20 ]


Verwijderd

Topicstarter
Elke taak start al een batchfile op
1. taak1.bat
2. taak2.bat
3. taak3.bat.

Elke taak start dezelfde .exe op alleen met andere parameters. Deze exe kan niet meerdere keren tegelijkertijd opgestart worden. third party is juist niet de bedoeling.

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 12-12-2025
Maak een enkele batfile waarin je de 3 andere batfiles aanroept... kan je doen met start /wait taak1.bat

We are shaping the future


Verwijderd

Topicstarter
start /wait C:\1.bat
start /wait C:\2.bat
start C:\3.bat

Wil niet werken. 1.bat wordt afgehandeld alleen start 2.bat niet.

  • Gé Brander
  • Registratie: September 2001
  • Laatst online: 19-01 13:20

Gé Brander

MS SQL Server

Verwijderd schreef op maandag 03 april 2006 @ 21:51:
Elke taak start al een batchfile op
1. taak1.bat
2. taak2.bat
3. taak3.bat.

Elke taak start dezelfde .exe op alleen met andere parameters. Deze exe kan niet meerdere keren tegelijkertijd opgestart worden. third party is juist niet de bedoeling.
Ok, wat staat er in die bat files?
code:
1
taak1.bat = startexe.exe /1 /2 /3 /4

code:
1
taak2.bat = startexe.exe /2 /3 /4 /5

code:
1
taak3.bat = startexe.exe /3 /4 /5 /6
Verwijderd schreef op maandag 03 april 2006 @ 22:09:
start /wait C:\1.bat
start /wait C:\2.bat
start C:\3.bat

Wil niet werken. 1.bat wordt afgehandeld alleen start 2.bat niet.
Dan moet je de dus niet de bat files aanroepen, maar de exe met de opties.
code:
1
2
3
start /wait "C:\startexe.exe /1 /2 /3 /4"
start /wait "C:\startexe.exe /2 /3 /4 /5"
start "C:\startexe.exe /3 /4 /5 /6"

Of als dat niet gaat werken omdat er meer in die bat files staat dan hetvolgende:
code:
1
2
3
start /wait cmd.exe /C "C:\taak1.bat"
start /wait cmd.exe /C "C:\taak2.bat"
start cmd.exe /C "C:\taak3.bat"

Test maar uit met:
code:
1
2
3
START /WAIT cmd.exe /C notepad.exe
START /WAIT cmd.exe /C calc.exe
START cmd.exe /C notepad.exe

Doe maar eens cmd /? in een cmd box. Veel hulp.
De /C bij cmd.exe zorgt er voor dat de opdracht die daarachter genoemd staat uitgevoerd wordt (eventueel in een nieuw venster). Let op de quotes om de opdracht heen. En ik zou als ik jou was de extensie .bat niet gebruiken maar .cmd. In cmd scripting heb je strikt genomen meer mogelijkheden dan in bat files.

[ Voor 65% gewijzigd door Gé Brander op 03-04-2006 22:42 ]

Vroeger was alles beter... Geniet dan maar van vandaag, morgen is alles nog slechter!


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Ik pas even je topic titel aan zodat er wat duidelijker in staat wat je nu eigenlijk wil bereiken :)

  • Gé Brander
  • Registratie: September 2001
  • Laatst online: 19-01 13:20

Gé Brander

MS SQL Server

nexxexium, is het nou al gelukt?

Vroeger was alles beter... Geniet dan maar van vandaag, morgen is alles nog slechter!


  • The Eagle
  • Registratie: Januari 2002
  • Laatst online: 19-02 23:34

The Eagle

I wear my sunglasses at night

Het is eigenlijk heel simpel:
Batchfile run.cmd:
code:
1
2
3
1.cmd
2.cmd
3.cmd

Deze zullen op elkaar wachten :) Nu zeg je dat de losse batch-files ook al batch files aanroepen - da's op zich geen probleem, als je het commando call gebruikt
code:
1
call subroutine.bat

Kun je evt ook in je hoofdfile gebruiken :)

Al is het nieuws nog zo slecht, het wordt leuker als je het op zijn Brabants zegt :)


Verwijderd

Topicstarter
Hmm het is nog niet gelukt ik ga het nog met die subroutine proberen.

Waarom het niet lukt is waarschijnlijk omdat dezelfde .exe maar 1x tegelijkertijd opgestart kan worden en voordat het proces wat de .exe opstart klaar is duurt lang hierna moet precies hetzelfde gebeuren alleen dan met 2 andere parameters.

echt lomp eigenlijk dat dat niet standaard zit in xp. een scheduled task optie welke zegt start op nadat scheduled task x afgerond is.

[ Voor 19% gewijzigd door Verwijderd op 09-04-2006 19:42 ]


  • Gé Brander
  • Registratie: September 2001
  • Laatst online: 19-01 13:20

Gé Brander

MS SQL Server

Verwijderd schreef op zondag 09 april 2006 @ 19:41:
Hmm het is nog niet gelukt ik ga het nog met die subroutine proberen.

Waarom het niet lukt is waarschijnlijk omdat dezelfde .exe maar 1x tegelijkertijd opgestart kan worden en voordat het proces wat de .exe opstart klaar is duurt lang hierna moet precies hetzelfde gebeuren alleen dan met 2 andere parameters.

echt lomp eigenlijk dat dat niet standaard zit in xp. een scheduled task optie welke zegt start op nadat scheduled task x afgerond is.
Wat is er dan mis met de voorgestelde manieren? Ik begrijp denk ik niet wat je nou wil bereiken als dat het probleem niet oplost.
code:
1
2
3
start /wait cmd.exe /C "C:\startexe.exe /1 /2 /3 /4"
start /wait cmd.exe /C "C:\startexe.exe /2 /3 /4 /5"
start cmd.exe /C "C:\startexe.exe /3 /4 /5 /6"

[ Voor 15% gewijzigd door Gé Brander op 10-04-2006 13:28 ]

Vroeger was alles beter... Geniet dan maar van vandaag, morgen is alles nog slechter!

Pagina: 1