【问题标题】:strtonum in OS X, not foundOS X 中的 strtonum,未找到
【发布时间】:2011-11-20 06:41:37
【问题描述】:
cmp -l "$1" "$2/$1" | awk '{printf "%08X %02X %02X\n", $1, strtonum(0$2), strtonum(0$3)}'

我正在使用上面的命令从 shell 脚本中显示 Ubuntu 中的二进制差异。但是,这在 OS X lion 中不起作用,声称未找到 strtonum。知道如何在 OS X 中使用它或用类似/轻的东西代替它吗?

【问题讨论】:

  • 这是 gawk 中可用的 GNU 扩展。你可以安装和使用 GNU awk,或者使用this function

标签: shell awk osx-lion


【解决方案1】:

MacPortsHomebrew 均可用于安装awk 的 GNU 版本,其中包括 strtonum。为避免与系统awk 发生冲突,他们将GNU 版本安装为gawk

例如,安装了基本的MacPorts 文件:

sudo port install gawk

【讨论】:

    【解决方案2】:

    据说mac/BSD上没有strtonumawk,但是如果您需要将hex转换为dec,有一个解决方法:

    echo 0xff | awk '{print $1+0}'
    

    所以只需将0 添加到十六进制值,默认情况下awk 将其转换为十进制值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-16
      • 1970-01-01
      • 1970-01-01
      • 2017-05-18
      • 2012-05-30
      • 2016-02-05
      • 1970-01-01
      相关资源
      最近更新 更多