Archived
3
0
This repository has been archived on 2024-06-18. You can view files and clone it, but cannot push or open issues or pull requests.
libipc-old/pingpong/pingpong.sh
2016-06-05 20:48:13 +02:00

38 lines
662 B
Bash
Executable File

#!/bin/dash
REP=/tmp/ipc/
SERVICE="pongd"
NB=3
# CLEAN UP !
if [ $# -ne 0 ] && [ "$1" = clean ]
then
echo "clean rep ${REP}"
rm ${REP}/${SERVICE}
rm ${REP}/*-in
rm ${REP}/*-out
exit 0
fi
if [ $# -ne 0 ]
then
NB=$1
fi
for pid in `seq 1 ${NB}`
do
# we make the application pipes
mkfifo ${REP}/${pid}-1-in 2>/dev/null
mkfifo ${REP}/${pid}-1-out 2>/dev/null
# pid index version
echo "${pid} 1 1" > ${REP}/${SERVICE}
# the purpose is to send something in the pipe
cat /dev/urandom | base64 | head -n 1 > ${REP}/${pid}-1-out
# the the service will answer with our message
cat ${REP}/${pid}-1-in
done