Я только что начал изучать awk, и я немного смущен всеми теми версиями вокруг. Есть ли какая-либо "версия", которая найдена во всех подобных Unix системах? Как, Вы знаете, плоскость vi? Стандарт awk поддерживают-F опцию?
awk - наиболее распространенное и будет найдено в большинстве подобных Unix систем, самой старой версии и нижним к более новым.
mawk - быстрая реализация AWK, которая это - кодовая база, основана на интерпретаторе байт-кода.
nawk - в то время как язык AWK разрабатывался авторы, выпустил новую версию (следовательно n - новый awk) для предотвращения беспорядка. Думайте о нем как Python 3.0 AWK.
простофиля - сокращенный от GNU awk. Единственная версия, в которой разработчики попытались добавить поддержку i18n. Разрешенные пользователи для записи их собственного C совместно использовали библиотеки для расширения его с помощью их собственных "плагинов". Эта версия является стандартной реализацией для Linux, исходный AWK был записан для Unix v7.
Существуют другие версии как jawk (реализация Java), bwk (реализация Brian W. Kernighan) и так далее.
Можно просто использовать awk
. Это определяется POSIX и поэтому должно существовать во всех совместимых на POSIX системах.
-F
параметр получает мандат этим также.
awk
будет идти примерно каждый *, ОТКЛОНЯЮТ базирующуюся систему, но точные специфические особенности того, что она поддерживает, сместятся немного, поскольку совершенно возможно, что это просто будет symlinked к другой версии, сродни как /bin/sh
часто связывается с определенной оболочкой, часто bash
или одна из его производных. (Для записи я также знаю много машин где vi
symlinked к vim
также.)
Страница Wikipedia AWK является хорошей ссылкой начинающего для начала понять AWK.
Опция Field Separator'-F
'поддерживается во всех вариантах AWK - afaik.