Ik ben bezig met een scriptje waarin ik een programma op een aantal inputfiles wil testen. Sommige inputfiles laten het programma te lang rekenen en daar wil ik niet op wachten. Ik wil dus het programma na bijv. 15 minuten laten stoppen, maar ik vind het lastig om uit te vinden hoe dat moet. Hoe kan je een programma slechts een maximaal aantal minuten laten lopen?
eerste regel in je scriptje:
at +15m `kill -9 <mypid>`
(maar dan in de juiste syntax
)
at +15m `kill -9 <mypid>`
(maar dan in de juiste syntax
[ Voor 32% gewijzigd door bakkerl op 21-06-2006 23:14 ]
om nu direct een SIGKILL te sturen vind ik een beetje overdreven, beter is het om gewoon SIGTERM te doen om de applicatie de kans te geven zichzelf netjes af te sluiten, als het daarna nog steeds draait zou je kunnen gaan denken aan SIGKILL imobakkerl schreef op woensdag 21 juni 2006 @ 23:13:
eerste regel in je scriptje:
at +15m `kill -9 <mypid>`
(maar dan in de juiste syntax)
Klinkt goed .. ware het niet dat er geen 'at' bij Slackware zit? Ik heb het commando in ieder geval niet en kan het ook niet vinden op de package browser. Weet iemand waar dat bij zit? (ja, ik heb al gezocht, maar probeer maar 's 'at' op google in te voeren
)
Misschien kan je iets met een until loopje doen?
code:
1
2
3
4
5
6
| #!/bin/bash
COUNTER=20
until [ $COUNTER -lt 10 ]; do
echo COUNTER $COUNTER
let COUNTER-=1
done |
But I thought YOU did the backups...
Mijn eerste hit op GoogleVerwijderd schreef op donderdag 22 juni 2006 @ 21:35:
Klinkt goed .. ware het niet dat er geen 'at' bij Slackware zit? Ik heb het commando in ieder geval niet en kan het ook niet vinden op de package browser. Weet iemand waar dat bij zit? (ja, ik heb al gezocht, maar probeer maar 's 'at' op google in te voeren)
Daarmee kun je dus geen draaiend commando onderbreken tenzij je iets dergelijks ernaast gaat spawnen; maar dan is `at` toch richting een beter oplossingInsanergy schreef op donderdag 22 juni 2006 @ 22:05:
Misschien kan je iets met een until loopje doen?
code:
1 2 3 4 5 6#!/bin/bash COUNTER=20 until [ $COUNTER -lt 10 ]; do echo COUNTER $COUNTER let COUNTER-=1 done
---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate
Krijg nou watSpider.007 schreef op donderdag 22 juni 2006 @ 22:16:Mijn eerste hit op Google
[ Voor 3% gewijzigd door Verwijderd op 22-06-2006 22:27 ]
iets als dit? ik ben er alleen nog niet uit hoe je dat scriptje zou moeten killen 
<scriptje>&
sleep 15
kill <scriptje>
<scriptje>&
sleep 15
kill <scriptje>
Have a taste of freedom. It is sometimes a bitter pill. To me though, this is the sweetness of the GPL
ik heb 't nu zo gedaan:
In die inputfile staat `pkill program`, en zo werkt 't! Bedankt!
code:
1
2
3
4
5
6
7
8
| for i in `ls *.input`; do
at now +15 minutes -f inputfile
./program1 x
at now +15 minutes -f inputfile
./program2 x
at now +15 minutes -f inputfile
./program3 x
done |
In die inputfile staat `pkill program`, en zo werkt 't! Bedankt!
Pagina: 1