SH: Mini Shell

Анотація


Mini Shell -- це реімплементація Bourne Shell.

— Робота під Windows, Linux, Mac, BSD;
— Без залежностей, потрібно тільки C99/POSIX які є стандартом;
— Вбудовані команди;
— Мова програмування Bourne Shell.

Параметри

Цей шелл можна також використовувати у якості вправи для написання консольних додатків. Головним чином це сцена яка обмежена мовою інтерпретатора команд.

$ ./sh

Вбудовані команди

Вбудовані команди, які підтримують майже всі шели.

cd — змінити поточну директорію,
echo — надрукувати змінну, текст чи вираз
exit — вийти з шела,
pwd — надрукувати поточну директорію,
read — прочитати ввід користувача,
source — виконати шел програму,
set — встановити опцію шела,
unset — видалити змінну чи функцію,
export — встановити змінну середовища,
alias — створити синонім для команди,
unalias — видалити синонім для команди,
type — перейти в режим редагування,
test, [ — 2-елімінатор,

Мова програмування

Мова програмування сумісна навіть з першими шелами.

if, then, elif, fi — елімінатор 0-вимірної сфери,
case, esac — патерн мачінг,
for, while, until, do — математична індукція,
function — лямбда абстракція,
(), [], {} — три види операторних дужок,
| — пайп,
& — бек,
&& — і,
|| — або,
`` — командне макро-цитування.


˙

Код

Репозиторій проекту github.com/BitEdits/sh опубліковано під DHARMA ліценцією, яка забороняє використання Mini Shell для росіян та всіх хто з ними повʼязаний. Для всіх інших це не відрізняється від ISC ліцензії.


˙