Rozważ program interaktywny interactive. Muszę uruchamiać ten program dość często i za każdym razem, gdy go uruchamiam, kilka pierwszych poleceń jest takich samych. Oczywiście konieczność ciągłego wpisywania tych poleceń jest uciążliwa. Zebrałem te polecenia (oddzielone znakiem nowej linii) w pliku cmd. Teraz mogę zrobić, cat cmd | interactiveaby uruchomić polecenia. Problem polega na tym, że raz cmdprzeczytany, interactiveotrzymuje EOF i wychodzi.
To, co chcę zrobić, to najpierw interactiveprzeczytać z potoku (oczywiście interactive < cmdjest to również dopuszczalne), a po otrzymaniu EOF zacznij czytać z klawiatury.