> Что то никак не могу найти как сделать так, чтобы перенавравленный ввод
> выводился в окно терминала.Я тебе расскажу, как это работает. Я тебе даже скажу, _почему перенаправленны не выводится в окно терминала. (И даже дам ещё один совет, который тебе опять не понДравится: хочешь подробного "видения", пиши логи.)
> Проще пояснить на примере. Есть скрипт test:
> read a
> echo "a=$a"
Итак, скрипт. read читает 1 строку в переменную со _своего и, соответственно, _скрипта stdin-а. Скрипт исполняет, ну, скажем, bash.
> Если его запустить и ввести значение 123, то в терминале увидим:
> 123
> a=123
Имеем: stdin и stdout скрипта -- на каком-нибудь /dev/pts/7. У bash-а - они же. bash-у их _дал терминал, скажем, konsole. В _терминале включено т.н. "локальное эхо": всё, что воодит юзер в иксах в этом терминале, он, терминал, _отображает в окошке (эхо!) и даёт на stdin того /dev/pts/7, откуда их (ну, 1 строку), при выполнении команды скрипта read, и читает тот самый bash и кладёт её, строку, в переменную и т.д.
Итого: строка в переменной, эхо на терминале. Заметь, эхо на экран положил не скрипт, не баш, а _терминал.
> А если выполнить test<<<123, то вывод будет:
> a=123
Случай №2, "сложный-непонятный, детективно запутанный": выполняя директиву переназначения стд.ввода ("<<<" в данном случае) _баш перед запуском скрипта "подкючает" ему на stdin непий пайп (см.pipe), в который на вх.конце пишет строку "123". А когда скрипт (и да, тот же, но местами другой!, баш) выполняет чтение из своего stdin никакого чтения из /dev/pts/$NN _терминалом и соотв._эха на его экран не происходит.
Итого: строка в переменной, нет эха на терминале. (А если пожмакать кнопки в терминале, _их он отобразит (=эхо), но на stdin скрипта они не попадут.)
Всё логично, всё работает, как задумано. И теперь, надеюсь, понятно почему.