Eu tenho um arquivo ASCII, que se parece com isso:
36,36,0,1
36,36,0,2
...
O que eu quero fazer é enviar cada linha como carga útil de um segmento TCP binário com o NetCat.
Para converter o número do arquivo para sua representação binária, estou usando Perl print pack("c", <STDIN>);
para poder converter facilmente o arquivo inteiro (número por número). Também sei como enviá-lo, cat file | netcat localhost 9999
mas este comando envia todo o conteúdo como carga útil em um segmento.
O que posso fazer para enviar cada linha do arquivo original (convertido em binário) como um novo segmento TCP?
Responder1
OK, então encontrei uma solução.
Para enviar todos n
os bytes do arquivo como um novo segmento TCP, o comando semelhante ao fornecido abaixo pode ser usado:
for i in `seq 1 $num_of_segments`
do
head -c $i file_name | tail -c 1 | netcat localhost 9999
done
A opção -c n
in head
e tail
os comandos informam para canalizar o primeiro ou o último n
byte.