#!/bin/bash i=0 while :; do for msg in "hi $i" "hello $i" "beans $i" "ham $i"; do { echo "$msg"; sleep 0.05; } | socat - TCP:127.0.0.1:$1,linger=1 & done i=$((i+1)) [ "$i" -gt 100 ] && break done wait