Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 16:15 Der er 19 kommentarer og
1 løsning

Kørsel hvert 2. minut??

Hej! jeg har skrevet en dum batch-fil, som kankopiere nogle filer fra 1 maskine til en anden hvert andet minut, men det er her problemet opstår... Jeg har prøvet at få det til at holde tidsplanen, vha. Planlagte Opgaver, men den kan kun køre 1 gang dagligt, og når maskinen logger på!!
Nogle idéer til hvordan det kan køres automatisk hvert 2. minut??
Avatar billede opperen Nybegynder
04. juli 2003 - 16:30 #1
Du kan gøre sådan her (prop det i en .bat fil):

@echo off
:wait
for /L %%k in (1,1,100000) do echo %%k
call ditscript.bat
goto wait


Det er måske ikke vildt kønt, men både nemt og hurtigt. Du skal nok skrue lidt på tallet 100000 for at få det til at tage ca 2 min alt efter din processor kraft. Held og lykke med det
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 17:02 #2
Tak tak!!! Skal jeg proppe det ind, FØR eller efter det script som kopiere?
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 17:03 #3
ahaa!! Det skal selvfølgelig køre i et script for sig selv... Kunne jeg have sagt mig selv... ;)
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 17:05 #4
Men er der ikke chance for at den fylder hukkommelsen så meget så den booter, når der ikke er mere swapfilen kan tage af??
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 17:07 #5
Jubii det virker!!
Skal du have dine points, så læg et svar! :D
Avatar billede nmh Nybegynder
04. juli 2003 - 17:35 #6
Det vil nok være mere fikst at benytte et VBscript. Her er et eksempel:

Option Explicit
dim i, tid
const interval=5

sub Kopier
  Msgbox "her er jeg igen"
end sub

tid=timer
for i=1 to 10
  kopier
  tid=tid+interval
  while timer<tid
  wend
next

Du skal blot lave en fil med dette indhold og f.eks. navnet
gentag.vbs
Så vil der 10 gange hver 5. sekund komme et pop-up vindue med indholdet 'Her er jeg igen'. Du skal så blot i ændre indholdet af proceduren kopier til, at du enten aktiverer din bat-fil eller du skriver dine kopierings-ting i VBscript. Det sidste er det bedste.

Jeg kan ikke lige nu huske, hvordan man får et VBscript til at aktivere en bat-fil, men jeg kan finde ud af det, hvis det har interesse.
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 17:47 #7
HMM... Problemet med denne løsning, er at jeg bliver tvunget til at trykke OK, på en dialogboks, 10 gang hvert 5. sekund, og det gider jeg ikke!! :D
Jeg kender ikke meget til VBS, så jeg har ingen mulighed for at ændre i dit script, så det virker....

Bat-filsystemet virker, efter planen, så jeg tror jeg holder mig til det, men tak alligevel!! :D
Avatar billede nmh Nybegynder
04. juli 2003 - 18:09 #8
Det er ikke tilfældet. Dett eksempel skulle blot vise, at der sker noget. Msgbox "her er jeg igen" skal fjernes.
Kopier skal blot lave kopieringen og du behøver ikke at gøre noget.
Avatar billede nmh Nybegynder
04. juli 2003 - 18:11 #9
Nu har jeg siddet og leget lidt mere med det. Jeg skriver om lidt et indlæg med et VBscript, der aktiverer en bat-fil 3 gange hvert 5. sekund. Så kan du bruge det eller lade være.
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 18:13 #10
Ok, fint fint... Men den skal kun opdatere batfilen 1gang hver 120. sekund!
Avatar billede nmh Nybegynder
04. juli 2003 - 18:36 #11
Her er så scriptet: Dette script vil hver gang der er gået 120 sek køre bat-filen kopier.bat. Dette vil ske 1000 gange ialt.
Jeg anbefaler, at du for at teste det ændrer 1000 til 3. Så vil din bat-fil kun blive aktiveret 3 gange. Når det hele virker kan du jo ændre til 10000 gange eller hvad du nu synes.

Option Explicit
dim i, tid, shell
const interval=120

sub Kopier
  shell.run "kopier.bat",0,0
end sub

set shell=Wscript.CreateObject("Wscript.Shell")


tid=timer

for i=1 to 1000
  kopier
  tid=tid+interval
  while timer<tid
  wend
next
Avatar billede nmh Nybegynder
04. juli 2003 - 18:38 #12
Jeg glemte at sige, at du skal lægge scriptet i det underkatalog, hvor din bat-fil ligger. Du kan starte VBscriptet ved at åbne et vindue til kataloget og blot klikke med musen på script-filen.
Avatar billede opperen Nybegynder
04. juli 2003 - 19:50 #13
Jamen her er mit svar så! :-)
Avatar billede bertelbrander Novice
04. juli 2003 - 20:51 #14
Man kan lave delays i batch filer ved at ping'e en IP-addresse der ikke findes og bruge ping's -w parameter til at specificere delayet:

ping -w 120000 0.0.0.1
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 21:14 #15
jeg går ud fra at nmh's VB-script, skal lægges ind i en fil, af typen *.vb ??
Avatar billede nmh Nybegynder
04. juli 2003 - 21:15 #16
Typen skal være vbs. Filnavnet kunne f.eks. være kopiering.vbs
Avatar billede nmh Nybegynder
04. juli 2003 - 21:16 #17
og husk at lægge det i samme katalog som din bat-fil.
Avatar billede tidsrejse-frede Nybegynder
04. juli 2003 - 21:24 #18
Hmm... Jeg kan ikke se om den gør det, og batch-systemet virker efter planen, så jeg siger mange nej tak, nhm... :D
Avatar billede nmh Nybegynder
04. juli 2003 - 21:41 #19
OK. Det er naturligvis det nemmeste at bruge en ren bat-løsning, men din windows maskine kører bedre, hvis du bruger VBscript. Dette siger jeg ikke, fordi jeg ikke fik nogle point.

Prøv at forsøge dig lidt med VBscript. Alt hvad man kan lave med bat-filer kan man også lave med VBscript.
Avatar billede bertelbrander Novice
05. juli 2003 - 00:02 #20
Ulempen ved bat-scriptet er at det æder al CPU tid.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester