Разница между UnxUtils и GNU CoreUtils

Я пользователь Windows, и мне нужны такие программы, как grep и sed, а также другие утилиты, такие как ls, cut и т. Д. В моей командной строке. Я наткнулся на 2 пакета, которые бы выполнить это

  • UnxUtils
  • GNU Coreutils

Я хотел бы знать, в чем разница между этими двумя характеристиками и, что более важно, с точки зрения производительности, прежде чем выбирать между ними. Из того, что я видел, Coreutils - это супер набор UnxUtils. Это правильно?

2 ответа

Основная претензия к известности UnxUtils заключается в том, что он находится поверх MSVCRT.dll, а не glibc. Это означает, что он знает о собственных путях Windows (то есть вы можете использовать такие команды, как ls c:). Некоторые (особенно cygwin и SFU) отображают собственные имена путей DOS в древовидную структуру, похожую на unix.

Поддержка собственного пути DOS полезна, если вы хотите выполнять команды unix из файлов.cmd (что иногда бывает полезно). Обратите внимание, что это отличается от SFU или Cygwin. Я не уверен, что CoreUtils делает это, а веб-документация не ясна. Если это так, вам, вероятно, лучше использовать CoreUtils, так как обслуживание UnxUtils довольно скудно (например, нет собственных 64-битных версий). Однако UnxUtils довольно стабилен и работает нормально на 64-битных системах.

РЕДАКТИРОВАТЬ: хотя документация не является явным, вспомогательные веб-ресурсы подразумевают поддержку путей DOS, поэтому CoreUtils, вероятно, делает это.

Не уверен, откуда вы взяли свой "GNU Coreutils"....

Несколько лет назад я использовал UnxUtils. Причина? Просто потому, что я столкнулся с этим первым. И мне понравилось, что он, работающий на Windows, может обрабатывать этот разделитель пути платформы \ просто отлично... Позже я заметил, что некоторые из них, если его инструменты действительно не работают во всех деталях / переключателях, как я нуждался в них (и использовался в Linux). Кроме того, я испытал некоторые сбои. (Не спрашивайте подробностей, это угасающие воспоминания.) Более того, эти инструменты, похоже, больше не поддерживаются.

Затем я искал альтернативы. Я наткнулся на пакет GnuWin32. Это казалось мне...

(а) ... лучше поддерживать (некоторые инструменты время от времени получают обновления);
(б) ... содержат больше GNU и других инструментов свободного программного обеспечения, чем UnxUtils.

Хотя мне досадно, что некоторые из утилит GnuWin32 настаивают на / для разделения пути (некоторые другие прекрасно справляются с обоими), я все еще цепляюсь за GnuWin32.

Другие вопросы по тегам