Я реализовал простенький терминал.
Встроенные комманды :
cd
- меняет дирректорию на заданнуюpwd
- путь до текущей директорииecho
-STDIN
->STDOUT
kill
- убивает процесс по егоpid-`у
ps
- выводит список исполняющихся процессов
Остальные команды из PATH
.
Можно запускать исполняемые файлы с помощью ./
Реализованы конвееры. Вывод первой утилиты можно подать на вход второй и т.д
Например: ls -la | grep '[a-z]+'