Executar várias instâncias no plano de fundo
Você pode executar várias instâncias de socat
no segundo plano em um comando.
Eu uso sleep N
em vez de socat ...N... ...N...
para um exemplo:
echo -n 1 2 3 | xargs -d ' ' -I% bash -c '(sleep % ; echo slept % ) &'
A parte ()
e echo slept %
é necessária apenas para ter alguma saída de exemplo, portanto, seu comando real seria mais simples; %
será substituído por uma das portas listadas após o eco:
echo -n 3392 3393 3394 | xargs -d ' ' -I% bash -c 'socat TCP4-LISTEN:%,fork TCP4:192.168.10.102:% &'
Com a contagem de port args N
, isso também deve funcionar:
parallel -j N -i bash -c 'socat TCP4-LISTEN:{},fork TCP4:192.168.10.102:{}' -- 3392 3393 3394