Умная замена cd: запоминает часто используемые каталоги и позволяет быстро переходить к ним в популярных оболочках.
oils-for-unix/oils
Oils — совместимая с bash оболочка OSH и новый shell-язык YSH в стиле Python и JavaScript, написанные на Python и транслируемые в C++.
- Звёзды
- 3,400
- Форки
- 194
- Открытые issues
- 610
- Последний коммит
- 4 дня назад
Что это?
Oils предлагает путь перехода с bash. В него входит OSH, которая запускает существующие shell-скрипты, и YSH — новый shell-язык для пользователей Python и JavaScript, предпочитающих избегать традиционного синтаксиса shell.
Кодовая база написана на Python, поэтому она компактна и её легко изменять. Собственный инструмент трансляции преобразует код в C++, чтобы собрать небольшой быстрый исполняемый файл, не зависящий от Python во время выполнения.
Репозиторий предназначен для участников разработки. В README описана сборка dev-сборки, которая запускается непосредственно под Python, а также даны ссылки на wiki и канал Zulip для обсуждения разработки. Конечным пользователям предлагают воспользоваться официальными страницами релизов, а не клонировать репозиторий.
Ключевые возможности
- 01Запускает существующие shell-скрипты в стиле bash с помощью OSH
- 02Предоставляет YSH — новый shell-язык для пользователей Python и JavaScript
- 03Написан на Python, поэтому его легко изменять и использовать для прототипирования
- 04Транслируется в C++, обеспечивая небольшой исполняемый файл без зависимости от Python
- 05Включает набор spec-тестов для проверки совместимости с shell
Сценарии использования
- Запуск устаревших bash-скриптов в более последовательной среде выполнения shell
- Написание shell-автоматизации с синтаксисом, похожим на Python, вместо классического shell-синтаксиса
- Улучшение совместимости с shell путём исправления не проходящих spec-тестов
Быстрый старт
- 1
Соберите dev build, следуя инструкциям Contributing в вики
- 2
Запустите интерактивную оболочку OSH
bin/osh - 3
Запустите скрипт оболочки с помощью OSH
bin/osh myscript.sh - 4
Запустите оболочку YSH
bin/ysh
Что важно знать
- В этом репозитории собирается Python dev build, а не выпущенный бинарный файл; конечным пользователям следует использовать релизы в формате tarball на oils.pub.
- Лицензия не указана явно в метаданных (NOASSERTION).
Темы
Частые вопросы
- Что такое oils?
- Oils — совместимая с bash оболочка OSH и новый shell-язык YSH в стиле Python и JavaScript, написанные на Python и транслируемые в C++. Oils предлагает путь перехода с bash. В него входит OSH, которая запускает существующие shell-скрипты, и YSH — новый shell-язык для пользователей Python и JavaScript, предпочитающих избегать традиционного синтаксиса shell.
- oils можно использовать бесплатно? Какая у него лицензия?
- oils распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- oils всё ещё поддерживается?
- Активно поддерживается. Последний коммит в oils — 18 окт. 2026 г..
- Для чего можно использовать oils?
- Запуск устаревших bash-скриптов в более последовательной среде выполнения shell Написание shell-автоматизации с синтаксисом, похожим на Python, вместо классического shell-синтаксиса Улучшение совместимости с shell путём исправления не проходящих spec-тестов
- Как установить oils?
- Соберите dev build, следуя инструкциям Contributing в вики Запустите интерактивную оболочку OSH: bin/osh Запустите скрипт оболочки с помощью OSH: bin/osh myscript.sh Запустите оболочку YSH: bin/ysh
- Где скачать oils?
- Исходный код и инструкции по установке — на GitHub: https://github.com/oils-for-unix/oils
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Веб-инструмент и библиотека Python, которые объясняют команды shell, сопоставляя каждый аргумент с описанием из справочной страницы man.
A command template and snippet manager for Bash, Zsh, Fish, Nushell and PowerShell that works like IntelliSense for your terminal.
Движок JavaScript на чистом Go с поддержкой ECMAScript 5.1 для встраивания выполнения JS-кода в приложения на Go.
Интерактивный интерпретатор C++ на базе Clang и LLVM с REPL для выполнения кода построчно.
Интерпретатор Python 3 на Rust, который запускает код без привязки к CPython и поддерживает WebAssembly и встраивание в приложения.