OS X 中的 strtonum,未找到
cmp -l "$1" "$2/$1" | awk '{printf "%08X %02X %02X\n", $1, strtonum(0$2), strtonum(0$3)}'
我使用上面的命令来显示 Ubuntu 中与 shell 脚本的二进制差异。然而,这在 OS X lion 中不起作用,声称未找到 strtonum。知道如何在 OS X 中使用它或用类似/轻量级的东西替换它吗?
cmp -l "$1" "$2/$1" | awk '{printf "%08X %02X %02X\n", $1, strtonum(0$2), strtonum(0$3)}'
I am using command above to show the binary differences in Ubuntu, from shell script. However, this doesn't work in OS X lion, claiming that strtonum not found. Any idea how to have it in OS X or substitute it with something similar/light?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MacPorts 或 Homebrew 可用于安装 GNU 版本的
awk
,其中包括strtonum
。为了避免与系统awk
发生冲突,他们将 GNU 版本安装为gawk
。例如,安装了基本
MacPorts
文件:Either MacPorts or Homebrew can be used to install the GNU version of
awk
which includesstrtonum
. To avoid conflicts with the systemawk
, they install the GNU version asgawk
.For example, with the base
MacPorts
files installed:据说 mac/BSD 上没有
strtonum
awk
,但是如果您需要将hex
转换为dec
> 有一个解决方法:因此只需将
0
添加到十六进制值,默认情况下awk
将其转换为十进制值。As it was said there is no
strtonum
on mac/BSDawk
, but if you need to converthex
todec
there is a workaround:So just add
0
to hex value and by defaultawk
converts it to decimal value.