Как получить версию awk на macOS? - PullRequest
0 голосов
/ 11 января 2019

Я знаю, как получить версию для awk в Linux: awk -W version

Однако это не работает в macOS.

Я оглянулся на SO и ничего не смог найти.

Я также заглянул в справочную страницу awk и ничего не смог найти:

$ man awk | grep version
          conversion format used when converting numbers (default %.6g)
   There are no explicit conversions  between  numbers  and  strings.   To

Ответы [ 2 ]

0 голосов
/ 11 января 2019

Способ EASY , когда доступны -v, -V, -version или --version (эта опция доступна в большинстве случаев):

awk --version
awk version 20070501

или

awk -version
awk version 20070501

Теперь, когда он недоступен, мы идем по хард пути:

whereis awk
/usr/bin/awk

, затем

what /usr/bin/awk 
/usr/bin/awk
    PROGRAM:awk  PROJECT:awk-24

и

strings /usr/bin/awk | grep -Ei "version|awk" 
/BuildRoot/Library/Caches/com.apple.xbs/Sources/awk/awk-24/src/b.c
version 20070501
bin/awk
-version
--version
awk %s
awkdelete
weird printf conversion %s
can't happen: bad conversion %c in format()
out of memory in awksprintf
out of memory in awkprintf
@(#)PROGRAM:awk  PROJECT:awk-24

Большую часть информации, которую вы искали, вы находите, читая строки в двоичном файле и используя grep, чтобы выделить то, что вы действительно ищете. (Примечание: вы также узнали, что -version и --version - это аргументы, которые можно использовать)

Вы также можете использовать grep -Eai "\bversion\b|awk|unix" /usr/bin/awk для достижения того же результата (чуть менее читабельный)

0 голосов
/ 11 января 2019
awk --version
awk version 20070501
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...