Usar buffer baseado em disco entre pipes

1

Eu gostaria de enviar um comando para um comando mais lento, com um buffer bastante grande (~ 200GB) entre eles. Aqui está um exemplo de caso de uso:

command1 | buffer -f file.buffer | command2

Existe um comando para fazer isso? Os que eu vi só foram armazenados na memória.

Agora que penso nisso, isso alcançaria o resultado desejado?

#!/bin/bash
# buffer.sh
FILE="$1"
tail -F "$FILE" 2> /dev/null &
cat > "$FILE"

Embora eu não saiba como parar a cauda depois de ler tudo ...

    
por Gyscos 26.08.2015 / 08:43

1 resposta

1

Acabei de encontrar o mbuffer: link

Aparentemente, a opção -t usa um arquivo temporário para buffer enorme, que é exatamente o que eu estava procurando. Ótimo!

    
por 27.08.2015 / 02:01