date命令不遵循Linux规范(Mac OS X Lion)
我一直在我的Linux机器上开发一个脚本已经有一段时间了,我也想在我的Mac上运行它。
我以为Mac上的function和linux上的function一样,但是今天我意识到这是错误的。 我知道Mac上存在的function较less,但我认为确实存在的function具有相同的实现。
这个问题是关于date
命令的。
当我运行命令在我的Linux机器的参数提供一些时间在纳秒,我得到正确的结果,但是当我在我的Mac上运行它,它没有这个选项。
Linux-Machine> date +%N 55555555555 #Current time in nanoseconds Mac-Machine> date +%N N
我如何才能获得在Mac上作为bash命令纳秒的当前时间?
最糟糕的情况是我创build了一小段代码,用C调用一个系统函数,然后在我的脚本中调用它。
任何帮助深表感谢!
这是因为OSX和Linux使用两套不同的工具。 Linux使用date
命令的GNU版本(因此,GNU / Linux)。 请记住,Linux是Linux,OS X是Unix。 他们不一样
您可以从MacPorts安装包含在“coreutils”软件包中的GNU date
命令。 它将作为gdate
安装在您的系统上。 你可以使用它,或者把date
二进制文件和新的gdate
二进制文件链接起来; 你的select。
man date
表明它不会超过一秒钟。 我会build议尝试另一种语言:
$ python -c'import time; print repr(time.time())' 1332334298.898616
不要呻吟OS X,在BSD呻吟:-P