Graças à chave grossa e de aço para as idéias. A resposta foi usar < < <
#!/bin/bash
# declare number
COUNTER=0
END=$(bc <<< -2^10)
while [ $COUNTER -gt $END ]; do
nc -nv [IPADDRESS] [PORT] <<< $COUNTER
let COUNTER=COUNTER-1
done
Se você quiser mais informações sobre as strings aqui, elas podem ser encontradas em: link