#!/bin/bash numPort=$1; rm output.csv; touch output.csv; echo 'startCodeAddr,endCodeAddr,startLibAddr,endLibAddr,startStackAddr,endStackAddr' >> output.csv; for ((nbIte=1; nbIte<=10000; nbIte++)) do ./serveur $numPort & > serveur_data.txt; sleep 0.01; pid=`ps -ef | grep serveur | grep -v grep | awk '{print $2}'`; #echo "Ité $nbIte, pid = $pid"; if [ -n "$pid" ] then startCodeAddr=`cat /proc/$pid/maps | grep /home/elies/Cours/4A/PIRDir/PIR/serveur | grep r-xp | awk '{print $1}' | awk -F "-" '{print $1}'`; endCodeAddr=`cat /proc/$pid/maps | grep /home/elies/Cours/4A/PIRDir/PIR/serveur | grep r-xp | awk '{print $1}' | awk -F "-" '{print $2}'`; startStackAddr=`cat /proc/$pid/maps | grep stack | awk '{print $1}' | awk -F "-" '{print $1}'`; endStackAddr=`cat /proc/$pid/maps | grep stack | awk '{print $1}' | awk -F "-" '{print $2}'`; startLibcAddr=`cat /proc/$pid/maps | grep /lib/x86_64-linux-gnu/libc-2.31.so | grep r-xp | awk '{print $1}' | awk -F "-" '{print $1}'`; endLibcAddr=`cat /proc/$pid/maps | grep /lib/x86_64-linux-gnu/libc-2.31.so | grep r-xp | awk '{print $1}' | awk -F "-" '{print $2}'`; echo "$startCodeAddr,$endCodeAddr,$startLibcAddr,$endLibcAddr,$startStackAddr,$endStackAddr" >> output.csv; fi kill -9 $pid &> /dev/null; done