Eu tenho um endpoint HTTP que serve um fluxo ilimitado de eventos. Agora eu gostaria de gravar esse fluxo usando curl, mas dividindo os arquivos gravados ao mesmo tempo - de preferência com base no número da linha para evitar corrupção.
Eu tentei dividir, mas parece que a divisão não faz nada até que o fluxo de entrada termine.
Este é o meu comando:
stdbuf -oL curl -s http://... | split -l1 - record.chunked.
Para teste: O comando a seguir tenta dividir o resultado do comando ping em arquivos com uma linha cada. Mas isso não funciona.
ping localhost | split -l1 - out.
Existe outra maneira (enxuta, fácil, preferencialmente sem script) de fazer isso?