Did you run is with parameters?
Did you press Ctrl-C afterwards?
No and no. Sorry! :-) Anyway, I redid the test and I got something like this:
Quote:
./kill-all-agents: line 4: 11146 Terminated ./run-any-agent $agent
./kill-all-agents: line 4: 11147 Terminated ./run-any-agent $agent
./kill-all-agents: line 4: 11148 Terminated ./run-any-agent $agent
Jobs were killed
Then I hit Ctrl+C. However, after a few seconds, the programs started back up. That was annoying! I'll look at your other suggestions and report back. (Though it probably won't be today since I need to be heading out; I'll get back tomorrow for sure.)
Thanks much,
DTW
---------- Post updated 01-21-10 at 10:32 AM ---------- Previous update was 01-20-10 at 06:07 PM ----------
Quote:
Then I hit Ctrl+C. However, after a few seconds, the programs started back up. That was annoying! I'll look at your other suggestions and report back. (Though it probably won't be today since I need to be heading out; I'll get back tomorrow for sure.)
I tried it again this morning. I typed:
Code:
sh ./run-all-agents MyProgram1 MyProgram2
The programs started up nicely. Then, to kill them, I typed:
Code:
sh ./kill-all-agents MyProgram1 MyProgram2
And then pressed Ctrl+C. This is what I saw:
Code:
./kill-all-agents: line 4: 13954 Terminated ./run-any-agent $agent
./kill-all-agents: line 4: 13955 Terminated ./run-any-agent $agent
I was happy but that was short-lived; after a few seconds, the programs started back up. What gives? I tried typing the same thing a few times, but it did the same thing. The programs continue to run. What else can I try?
Thanks,
DTW
---------- Post updated at 10:41 AM ---------- Previous update was at 10:32 AM ----------
Just to be perfectly clear:
[1] The run-any-agent script has:
Code:
#!/bin/bash
#
# Usage
# From the agent directory:
# sh ./run-agent
#
TAC_AGENT_HOME=`pwd`
LIB=${TAC_AGENT_HOME}/lib
CLASSPATH=.
CLASSPATH=${CLASSPATH}:${TAC_AGENT_HOME}/bin
for i in $( ls ${LIB}/*.jar ); do
CLASSPATH=${CLASSPATH}:$i
done
java -server -Xmx1024M -Xms512M -cp $CLASSPATH edu.umich.eecs.tac.aa.agentware.Main -config config/$1.conf
[2] The run-all-agents script has:
Code:
#!/bin/bash
for agent in $*
do
./run-any-agent $agent & # run in background
done
[3] The kill-all-agents has:
Code:
#!/bin/bash
trap killsubs INT
killsubs()
{
echo "CTRL-C was pressed"
jobs -p|xargs kill
echo "Jobs were killed"
exit
}
for agent in "$@"
do
./run-any-agent $agent & # run in background
done
wait
Thanks,
DTW
---------- Post updated at 10:53 AM ---------- Previous update was at 10:41 AM ----------
But nothing seems to work. The programs keep going.
Thanks,
DTW
---------- Post updated at 11:34 AM ---------- Previous update was at 10:53 AM ----------
So, I eventually ended up restarting my machine...It looked like there were too many zombie processes for me to get rid of. I tried running the "run-all-agents" script again followed by the "kill-all-agents" but it seems impossible to stop the programs once they kick off.
DTW
---------- Post updated at 12:06 PM ---------- Previous update was at 11:34 AM ----------
I'm running out of ideas...I executed the following command:
Code:
ps aux | more
And then scanned my screen for any processes that I may have spawned using "run-any-agent". What I found surprising was that there were several instances of "run-any-agent" - each with different PIDs. Check these out:
[1]
Code:
DTW 5740 0.0 0.0 2988 1368 pts/0 S 11:30 0:00 /bin/bash ./run-any-agent MyProgram1
DTW 5741 0.0 0.0 2988 1372 pts/0 S 11:30 0:00 /bin/bash ./run-any-agent MyProgram2
DTW 5746 0.1 1.2 1197324 24304 pts/0 Sl 11:30 0:02 java -server -Xmx1024M -Xms512M -cp ...[There's a lot of more after this]
[2]
Code:
DTW 6264 0.0 0.0 2988 1364 pts/0 S 11:34 0:00 /bin/bash ./run-any-agent MyProgram1
DTW 6265 0.0 0.0 2988 1364 pts/0 S 11:34 0:00 /bin/bash ./run-any-agent MyProgram2
DTW 6270 0.1 1.1 1197184 23812 pts/0 Sl 11:34 0:02 java -server -Xmx1024M -Xms512M -cp...[There's a lot of more after this]
[3]
Code:
DTW 6317 0.0 0.0 2988 1372 pts/0 S 11:34 0:00 /bin/bash ./run-any-agent MyProgram1
DTW 6318 0.0 0.0 2988 1372 pts/0 S 11:34 0:00 /bin/bash ./run-any-agent MyProgram2
DTW 6323 0.1 1.1 1196944 23408 pts/0 Sl 11:34 0:02 java -server -Xmx1024M -Xms512M -cp...[There's a lot of more after this]
I realized that killing these processes "manually" using the "kill -9" command doesn't seem to do anything. For example I did:
Code:
kill -9 6323
But I'm not sure anything happened. What should I do? Why are these processes being spawned so many times? I'm not sure what's going on here.
Just getting into the Unix command line programming and am unable to run any program I write. I am using a Makefile and the source is compiling but when I enter the name of the output file I get back:
bash: lab01exe.out: command not found
I'm sure I am just dooing something simple... (2 Replies)
How can I make a program run automatically at a certain time of day?
My problem is I need to make a small backup program that will back up a few files every day? (3 Replies)
This is not a question, but rather a simple how-to for
programmers who are new to the UNIX environment.
I too,am new to UNIX.
First I developed a few programs on my box and perfected them
until they were satisfactory for execution.
Problem was however, that once i compiled and all that,... (2 Replies)
Hi.Iam new to Linux.i got linux 7.0 pro and dont know how to run programs. I want a perl interputer and i know i installed one but how do i run it ??? Also how do i run a C or C++ editor ?and how do i run cron ? (3 Replies)
Hi there! I tried to search for something like this here but couldn't find anything. I need to run a specific program when linux starts up. I need to run it after the rp-pppoe has started because this prog needs internet connection.
I start the program by entering ./dynix start (its in my home... (4 Replies)
hi ,
i need to run a parallel program .
for example;
program1
{
array=" the second program should called here : program 2"
the execution should continue
}
the 2nd program should recieve an array of information as argument and it should... (4 Replies)
Lets get some stuff out of the way before the question. I am currently running FreeBSD 7.0 on a VirtualBox virtual machine. I do not know much about Unix or FreeBSD, though I do run linux at home. My boss gave me some files that he says are a unix version of the program Dynflow. The Programs... (0 Replies)
I have a program which I can run on the command line like below and works fine
/nethome/chrisd/HSeis/TommyCD/TommyCD-1101/bin/raytrac vmod=npt10-z30.vmod srfile=jcdint.sc rcfile=jcdint.rc phases="SP FS" level=twop format="X T" dtau=0.1 mdacc=0.5 mindist=0.1 maxitertp=25 ray=npt10-z30.ry... (0 Replies)
I want to run a C program from my BASH script. Here's some very basic simplified code of my bash script:
#!/bin/bash
echo "Run C program"
./main.c
echo "Ran C program"
Here's my main.c:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv)
{
... (3 Replies)