Repolode
uutils

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. 1

    Клонируйте репозиторий

    git clone https://github.com/uutils/coreutils
  2. 2

    Перейдите в каталог проекта

    cd coreutils
  3. 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 обновляется ежедневно.

Похожие проекты