Oprócz korzystania z pliku tymczasowego do pomocy, czy istnieje sposób / program mógłby buforować dane wejściowe z, stdin
ale nie wysyła zawartości do momentu uzyskania EOF
. Nie chcę też używać zmiennej powłoki (np buffer=$(cat)
.).
Ten program powinien zachowywać się jak poniżej (zakładając, że nazwa programu to buffered-cat
):
$ buffered-cat
line 1
line 2
line 3
^D # Ctr-D here(End of Line)
Teraz, gdy program otrzymał ^D
, buffered-cat
wyświetla zawartość
line 1
line 2
line 3
sort
do tego celu. Oczywiście ma skutki uboczne, które mogą być niepożądane.