Podczas eksperymentów z przekierowaniem wyjścia i podstawieniem procesu natknąłem się na następującą komendę i jej wynik:
me @ elem: ~ $ echo foo>> (cat); pasek echa bar me @ elem: ~ $ foo
(Tak, ta pusta nowa linia na końcu jest celowa).
Więc uderz w pasek echa, wypisuje mój zwykły monit, echo foo, echo jest nową linią i pozostawia tam mój kursor. Jeśli ponownie wcisnę Enter, wydrukuje mój monit w nowym wierszu i pozostawi kursor za nim (zgodnie z oczekiwaniami, gdy ktoś uderzy Enter w pustym wierszu poleceń).
Spodziewałem się, że napisze foo do deskryptora pliku, cat czyta foo i echo, pasek drugiego echa, a następnie wraca do wiersza poleceń. Ale oczywiście tak nie jest.
Czy ktoś mógłby wyjaśnić, co się dzieje?