Bash lendo de / dev / tcp, sem binários externos

1

Estou tentando ler arquivos com o soquete bash tcp,

Então, em um host eu faço,

nc -l 8888 < /etc/passwd

E em outra máquina,

echo </dev/tcp/127.0.0.1/8888

Mas ele não leu o arquivo como esperado, eu tenho uma linha vazia.

Eu sei que cat < /dev/tcp/xxx/xxxx funciona, mas posso fazer isso sem binários externos?

EDITAR

Então, tentei a sintaxe $()

# echo $(</dev/tcp/127.0.0.1/8888) > file
bash: /dev/tcp/127.0.0.1/8888: No such file or directory
    
por daisy 06.04.2016 / 10:59

1 resposta

1

Você pode usar um loop while :

while IFS= read -r line; do
    printf '%s\n' "$line"
done < /dev/tcp/localhost/8888
    
por 06.04.2016 / 14:45

Tags