Универсальный multicall-бинарник со стандартными Linux-утилитами командной строки, собранными в одной настраиваемой программе на C.
uutils/coreutils
Кроссплатформенная реализация GNU coreutils на Rust, предлагающая полноценные замены командам ls, cat, cp и другим.
Open source альтернатива:GNU coreutils
- Звёзды
- 24,338
- Форки
- 2,156
- Открытые issues
- 1,283
- Последний коммит
- 13 часов назад
Что это?
uutils coreutils — переписанный на Rust набор GNU coreutils: основные утилиты командной строки, такие как ls, cat, cp, rm и echo, которые входят в большинство систем Linux. Цель проекта — стать полноценной заменой: любые отличия от GNU считаются ошибками, а вывод в stdout и коды завершения должны точно совпадать с GNU.
Проект собирается для Linux, macOS, BSD, Windows и WASI. Его можно скомпилировать как один мультивызовный бинарный файл в стиле BusyBox или как отдельные бинарные файлы для каждой утилиты — с помощью Cargo или GNU Make. Опциональные возможности включают утилиты для отдельных платформ, инструменты SELinux, такие как chcon и runcon, а также ускорение вычисления контрольных сумм с помощью OpenSSL.
В проект также входят дополнительные возможности: опция --progress, улучшенные сообщения об ошибках с диагностикой в виде каретки в терминале и интернационализация с поддержкой UTF-8. Готовые бинарные файлы, man-страницы и дополнения для shell публикуются из основной ветки.
Ключевые возможности
- 01Переписывает на Rust основные утилиты GNU, такие как ls, cat, cp и rm.
- 02Собирается как один мультивызовный бинарный файл или как отдельные бинарные файлы для каждой утилиты.
- 03Поддерживает Linux, macOS, BSD, Windows и WASI.
- 04Предлагает опциональные утилиты для вычисления контрольных сумм с поддержкой OpenSSL и инструменты SELinux.
- 05Предоставляет дополнения для bash, fish, zsh, elvish и PowerShell.
Сценарии использования
- Попробовать реализацию повседневных Unix-команд на Rust с безопасной работой с памятью.
- Запускать скрипты с одинаковым поведением в Linux, macOS, BSD и Windows.
- Собрать минимальный бинарный файл в стиле BusyBox для встраиваемых систем или систем с ограниченными ресурсами.
- Тестировать поведение командной строки, совместимое с GNU, или вносить в него вклад.
Быстрый старт
- 1
Клонируйте репозиторий
git clone https://github.com/uutils/coreutils - 2
Перейдите в каталог проекта
cd coreutils - 3
Соберите релизный бинарный файл с помощью Cargo
cargo build --release
Что важно знать
- Некоторые параметры могут отсутствовать или работать иначе, чем в GNU coreutils.
- Для сборки полного пакета, включая документацию, на платформе Unix необходимы Cargo и GNU Make.
Темы
Частые вопросы
- Что такое coreutils?
- Кроссплатформенная реализация GNU coreutils на Rust, предлагающая полноценные замены командам ls, cat, cp и другим. uutils coreutils — переписанный на Rust набор GNU coreutils: основные утилиты командной строки, такие как ls, cat, cp, rm и echo, которые входят в большинство систем Linux. Цель проекта — стать полноценной заменой: любые отличия от GNU считаются ошибками, а вывод в stdout и коды завершения должны точно совпадать с GNU.
- coreutils можно использовать бесплатно? Какая у него лицензия?
- coreutils распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- coreutils всё ещё поддерживается?
- Активно поддерживается. Последний коммит в coreutils — 6 нояб. 2026 г..
- Для чего можно использовать coreutils?
- Попробовать реализацию повседневных Unix-команд на Rust с безопасной работой с памятью. Запускать скрипты с одинаковым поведением в Linux, macOS, BSD и Windows. Собрать минимальный бинарный файл в стиле BusyBox для встраиваемых систем или систем с ограниченными ресурсами. Тестировать поведение командной строки, совместимое с GNU, или вносить в него вклад.
- Как установить coreutils?
- Клонируйте репозиторий: git clone https://github.com/uutils/coreutils Перейдите в каталог проекта: cd coreutils Соберите релизный бинарный файл с помощью Cargo: cargo build --release
- Где скачать coreutils?
- Исходный код и инструкции по установке — на GitHub: https://github.com/uutils/coreutils
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Терминальный мультиплексор для запуска и управления несколькими сессиями терминала в одном окне с возможностью отключаться от них.
Фреймворк автоматизированного тестирования с поддержкой TAP для написания и запуска тестов Bash-скриптов и других UNIX-программ.
Oils — совместимая с bash оболочка OSH и новый shell-язык YSH в стиле Python и JavaScript, написанные на Python и транслируемые в C++.
Вариант UNIX-команды find с обходом в ширину: сначала выводит файлы из неглубоких каталогов и совместим с POSIX-, BSD- и GNU-версиями find.
Инструмент поиска по регулярным выражениям (rg), который рекурсивно обходит каталоги и по умолчанию учитывает правила .gitignore.