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!
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 ...
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!