Selain menggunakan file sementara untuk membantu, apakah ada cara/program dapat menyangga input dari stdin tetapi tidak menampilkan konten sampai mendapatkan EOF . Saya juga tidak ingin menggunakan variabel shell (mis. buffer=$(cat) ).
Program ini harus berperilaku seperti di bawah ini (anggap nama program adalah buffered-cat ):
$ buffered-cat
line 1
line 2
line 3
^D # Ctr-D here(End of Line)
Sekarang program menerima ^D , buffered-cat menampilkan isinya
line 1
line 2
line 3
Jawaban yang Diterima:
sponge orang miskin menggunakan awk :
awk '{a[NR] = $0} END {for (i = 1; i <= NR; i++) print a[i]}'
Jika Anda memiliki tac , Anda juga dapat menyalahgunakannya:
... | tac | tac