gradle run
Главный объект класса Shell
управляет состоянием шелла и запускает вводимые пользователем команды. Каждая строка, введённая пользователем обрабатывается с помощью NodeSplitter, Parser, PreCommandsBuidler
и CommandBuilder
. Если команда внутренняя (cat/echo...
), то её выполнение передаётся объекту класса её реализации. Если же команда внешняя, то с помощью ExternalCommand
для неё запускается процесс. После того, как команда заканчивает работу её вывод передаётся следующей команде, если она не последняя, иначе выводится в терминал. Со вводом ситуация симметричная.
Пайпы получают полный вывод левой команды и передают его полностью правой.
Нет поддержки комментариев.
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Kotlin 28 142 210 749
-------------------------------------------------------------------------------
SUM: 28 142 210 749
-------------------------------------------------------------------------------