PROCESSES=100 function clean() { ps -ef | grep "dgram_mod_survey" | awk '{print $2}' | xargs -i kill -9 {} ipcrm -a } function start_server() { clean ./dgram_mod_survey server 8 & server_pid=$! echo "start server pid ${server_pid}" } function start_clients() { for (( i=0; i<$PROCESSES; i++ )) do # pid_arr[$i]=$i ./dgram_mod_survey client 8 & pid_arr[$i]=$! echo "start ${pid_arr[$i]}" done } function close_clients() { for (( i=0; i<$PROCESSES; i++ )) do echo "kill ${pid_arr[$i]}" kill -9 ${pid_arr[$i]} #./dgram_mod_survey client 8 & ${pid_arr[$i]}=$! done } case ${1} in "server") start_server ;; "clients") start_clients sleep 5 close_clients ;; "") start_server sleep 1 start_clients sleep 5 close_clients ;; *) echo "error input" exit 1 ;; esac