Сделать программу сначала прочитанной из трубы, затем с клавиатуры

Рассмотрим интерактивную интерактивную программу. Я должен запускать эту программу довольно часто, и каждый раз, когда я запускаю ее, первые несколько команд одинаковы. Очевидно, что набирать эти команды снова и снова – это боль. Я собрал эту команду (разделенную символом новой строки) в файле cmd . Теперь я могу сделать cat cmd | interactive для запуска команд. Проблема в том, что после того, как cmd был полностью прочитан, interactive получает EOF и выходы.

То, что я хочу сделать, – это сначала interactive чтение из канала (очевидно, interactive < cmd также приемлем), и когда EOF получен, начните читать с клавиатуры.

One Solution collect form web for “Сделать программу сначала прочитанной из трубы, затем с клавиатуры”

Просто попросите cat объединить этот файл с stdin:

 cat cmd - | interactive 
  • Cygwin - хвост останавливает чтение входной трубы после первой записи
  • Где фактически передаются аргументы командной строки (например, «some.text»)?
  • Сценарий Ed работает только в том случае, если набирается медленно
  • vim: Синтаксис синтаксиса с помощью аргумента командной строки
  • Присоединитесь к интерактивному сеансу процесса, запущенного из rc.local
  • Безопасно ли вводить другую команду в STDIN, пока предыдущая команда записывает в STDOUT?
  • фоновый процесс ввода труб
  • Что происходит при выполнении этой команды cd / | VI?
  • stdin, stderr, перенаправление и журналы
  • Команды трубопровода, изменить запись stdin в stdout
  • patch: «дескриптор« плохих файлов »в сочетании с каналом и LD_PRELOAD / libtrash
  • Linux и Unix - лучшая ОС в мире.