I have a badly coded infinite looping program that I want to run on the command line - but not forever. I want to use ulimit so if it loops forever, it gets cut off.
I'm trying:
$> bash -c "ulimit -t 1; java myinfloopprogram"
but it's like nothing is happening. What's going on, is my commandline command wrong? myinfloopprogram runs just fine.
I'm running a terminal and the version is Ubuntu 9.10 .
Is the looping program actually using CPU?
-t is for CPU time, not wall clock time, so if your program is not actually using any CPU time it won't be killed.
Maybe try something like this instead:
ulimit
is probably not what you need. You need some sort of bash timeout feature. There's nothing built into bash, but there are a few scripts floating around to do this. eg https://stackoverflow.com/questions/687948/timeout-a-command-in-bash-without-unnecessary-delay