pipe stdout de onda ilimitada em arquivos em partes

5

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?

    
por Thomas B. 06.01.2014 / 14:27

0 respostas