On Wed, Nov 25, 2009 at 6:49 AM, Harry_ <harjitwo...@gmail.com> wrote: > > And one more thing I would like to ask is about how to get the list of > processes created by a process. I want this to make sure that all the > processes created by parent ant process are also killed once I Killed ant > process. Any way ant can write the output of new processes created into a > file. Then we can read them and kill them after killing the ant process. >
I use this in bash for killing the desired process and its child processes. Some pid's might duplicate in the list that gets sent to be killed, which is not a problem. ymmv. function killSubs () { process_list=`ps -ef` printf "\n\n'ps' output before PID's were killed: \n$process_list" >> $stdout_this_script sub_ids_all=`ps ef -o pid,ppid` printf "\n\nsub_ids_all: \n$sub_ids_all" >> $stdout_this_script sub_ids=`ps ef -o pid,ppid | grep $CURRENT_PID | awk '{ print $1 '}` printf "\n\nsub_ids for $CURRENT_PID: \n$sub_ids" >> $stdout_this_script # guarantee at least one pid is sent to be killed, # ideally its also able to find child id's sub_ids=$CURRENT_PID" "$sub_ids printf "\n\nsub_ids with CURRENT_PID $CURRENT_PID: \n$sub_ids" >> $stdout_this_script while read -ra pid_number; do for i in "${pid_numb...@]}"; do child_id=`ps ef -o pid,ppid | grep $i | awk '{ print $1 '}` printf "\n\nfound child_id: \n$child_id , from ppid: $i " >> $stdout_this_script sub_ids=$child_id" "$sub_ids done done <<< "$sub_ids" printf "\n\nkilling child pids: $sub_ids " >> $stdout_this_script kill -9 $sub_ids >> $stdout_this_script 2>&1 return } stdout_this_script="my_logs_`date +%F_%H_%M_%S`.log" CURRENT_PID=$! killSubs >> $stdout_this_script 2>&1 - R --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@ant.apache.org For additional commands, e-mail: user-h...@ant.apache.org