[BATCH] Commando na X seconden afbreken mogelijk?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Al Capino
  • Registratie: September 2002
  • Laatst online: 20-09 13:30
Hey mede tweakers,

Ik heb een batch scriptje gemaakt dat mijn shares opzet in Windows 7.
Simpel van opzet en het werkt perfect.

De volgende vraag heb ik echter nog:
Er wordt een serie shares ingesteld inclusief een externe HD die ik remote (niet via PC) aan en uit kan zetten.
De schijf is echter niet elke keer aan.
Als ik het script uitvoer, komt hij als laatste bij de Ext. HD.
Command: net use a: \\server\500gbextern
Als die uit staat dan blijft het script proberen om de share te maken wat niet gaat werken (wat ook logisch is).

Wat ik nu graag wil realiseren is dat ik dat commando een opgegeven aantal seconden kan laten runnen en dat hij na de verstreken seconden zichzelf breakt en eventueel naar een volgende commando gaat.

Wat heb ik geprobeerd±
- GOT search maar geen vergelijkbaar probleem gevonden.
- Google: Dacht dat ik een progje dat timeout heet had gevonden werkte. Maar dit laat alleen een timeout toe voor alles wat na mijn commando komt.

Ik hoop dat jullie iets weten.
Alvast bedankt voor de moeite! :)

Acties:
  • 0 Henk 'm!

  • RobTweaks
  • Registratie: Maart 2011
  • Laatst online: 22:56

RobTweaks

Captain Hindsight

Als je het subst-commando gebruikt, dan kapt 'ie er volgens mij automatisch mee na een tijdje.

Je krijgt dan subst A: \\servernaam\sharenaam

"Rock is overpowered. Paper is fine" -Scissors-


Acties:
  • 0 Henk 'm!

Verwijderd

Hoi,

Ik heb geen enkel programma gevonden die dit zou doen.
Maar ik ben zo vrij geweest om snel zo'n tooltje voor jou te maken.

Je kan het downloaden via dit adres: http://www.je-tec.be/ExecuteTimeout.zip

Het is gemakkelijk te gebruiken als volgt: ExecuteTimeout.exe 5000 ping -t 127.0.0.1
het commando "ping -t 127.0.0.1" mag max 5 seconden duren of het gaat in timeout.

Indien er nog iets zou ontbreken of niet werken, laat dan gerust iets weten.

Veel plezier er mee!

Acties:
  • 0 Henk 'm!

  • KillerZero86
  • Registratie: Mei 2010
  • Laatst online: 04-10 22:33
Waarschijnlijk is hij ook geintresseert in de source code. En als hij het niet is ben ik het wel =P. Kan je die misschien geven?

Acties:
  • 0 Henk 'm!

  • Vaan Banaan
  • Registratie: Februari 2001
  • Niet online

Vaan Banaan

Heeft ook Apache ontdekt

Je zult moeten spelen met TASKLIST en TASKKILL.
Ik heb een timeout testje gemaakt, wat cmd opdrachten na een bepaalde tijd kan afbreken
Inspiratie opgedaan via: http://social.technet.mic...e4-432b-85a7-4474b787803c
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
@echo off
rem
rem Timeout test
rem 
cls
rem Test 15 seconden ping met een timeout van 10 seconden. Timeout
echo ping 15 seconden (timeout: 10 seconden)
call :timeout 10 "ping localhost -n 15"
rem Test 5 seconden ping met een timeout van 6 seconden. OK
echo ping  5 seconden (timeout:  6 seconden)
call :timeout 6 "ping localhost -n 5"
pause
goto :eof
rem
rem call timeout tijd opdracht
rem
rem tijd      maximale tijdsduur in "seconden" voor uitvoering van de opdracht
rem opdracht  Uit te voeren opdracht tussen dubbele quotes
rem
rem Let op: de opdracht moet zichzelf afsluiten, anders wordt gewacht
rem         tot de maximale tijdsduur
:timeout
rem
rem - Start de opdracht op als apart proces
rem - Controleert elke "seconde" of de opdracht voltooid is
rem - Als de maximale tijdsduur wordt overschreden, wordt de opdracht verwijderd
set p=%2
set p=%p:~1,-1%
start /min "%p%" %p%
set /a i=%1+1
:loop
set j=%i%
for /f %%a in ('tasklist /FI "WINDOWTITLE eq %p%" /NH 2^>nul') do set /a i=%i%-1
if %i%==%j% goto :eof
if not %i%==0 ping localhost -n 2 >nul & goto :loop
taskkill /FI "WINDOWTITLE eq %p%" >nul
echo %2 niet uitgevoerd (timeout na %1 seconde(n))
goto :eof

[ Voor 7% gewijzigd door Vaan Banaan op 02-03-2012 02:57 ]

500 "The server made a boo boo"


Acties:
  • 0 Henk 'm!

  • Question Mark
  • Registratie: Mei 2003
  • Laatst online: 16:08

Question Mark

Moderator SSC/WOS

F7 - Nee - Ja

Waarom zo moeilijk doen?

code:
1
If exist \\server\500gbextern net use a: \\server\500gbextern


Bestaat "\\server\500gbextern" niet, dan wordt ook niet geprobeerd om deze share te mappen naar een drive-letter.

MCSE NT4/2K/2K3, MCTS, MCITP, CCA, CCEA, CCEE, CCIA, CCNA, CCDA, CCNP, CCDP, VCP, CEH + zwemdiploma A & B


Acties:
  • 0 Henk 'm!

  • Al Capino
  • Registratie: September 2002
  • Laatst online: 20-09 13:30
@Jetec: Bedankt voor de moeite!
Alleen zocht ik niet het commando dat een IP ping timeout.

@Vaan Banaan: Mooie listing, maar wel erg uitgebreid voor een simpel batch bestandje als de mijne.
Wel bedankt voor het meedenken :-)

@?Mark: Zo simpel als doeltreffend: Dit is wat ik precies zocht! Heb dat even getest en na 6 seconden (genoeg voor mij) breekt hij het commando af. Zeer bedankt kerel! :-)
Pagina: 1