【发布时间】:2023-04-03 22:43:02
【问题描述】:
我有一个 bash 脚本检查平台上的 CPU 数量,以有效地使用 -j 选项进行 make、repo 等。我使用这个:
JOBS=$(cat /proc/cpuinfo | grep processor | tail -1 | sed "s,^.*:.*\([0-9].*\)$,\1,")
echo -e "4\n$JOBS" | sort -r | tail -1
它工作正常。但是,我想知道是否有任何内置函数可以做同样的事情(即计算最小值或最大值)?
【问题讨论】:
-
与您的问题无关,但是您的
cat管道应该做什么?似乎grep ^processor /proc/cpuinfo | sed -n -e '$s/.*://p'会同样有效。 -
关于“多少核心”管道的另一个注意事项:由于您想知道系统中有多少核心可用,您不必确定“最高处理器编号是多少” ,但实际上更安全、更简单的方法是,count 它们:
grep ^processor /proc/cpuinfo | wc -l. -
只使用
nproc怎么样?