当你运行Mac OS X时,你如何从命令行得知机器上有多少核?在Linux上,我使用:
x=$(awk '/^processor/ {++n} END {print n+1}' /proc/cpuinfo)
虽然不完美,但已经很接近了。它的目的是被传递给make
,这就是为什么它给出的结果比实际数字高1。我知道上面的代码可以用Perl写得更密集,也可以用grep、wc和cut来写,但我认为上面的代码是简洁和可读性之间的一个很好的折衷。
澄清一下:我问的是有多少个逻辑核可用,因为这对应于我想要make
生成多少个同时存在的作业。jkp的答案,由Chris Lloyd进一步完善,是我所需要的。YMMV。