curl file:///dev/fd/0
É a maneira correta de fazer curl
ler o descritor de arquivo 0 ( stdin
).
Pegue qualquer arquivo de texto legível, faça
<theTextFile.txt curl file:///dev/fd/0
E deve funcionar como cat
.
Seu problema é "Como faço uma leitura de onda a partir de um cano?" e receio que a resposta seja: código fonte do curl do patch .
Se você analisar o strace of curl no exemplo acima, verá mmap
s o arquivo. mmap
ing não funcionará se o arquivo for um pipe. Se o curl utilizasse as chamadas de sistema regulares read
e write
, não haveria nenhuma diferença entre <theTextFile.txt curl file:///dev/fd/0
e cat theTextFile.txt curl | file:///dev/fd/0
, que é como deveria ser, IMO.