POSIXを介してシェルスクリプトにCPUスレッドがいくつあるかどうかを確認する方法は?

POSIXを介してシェルスクリプトにCPUスレッドがいくつあるかどうかを確認する方法は?

POSIXを介してシェルスクリプトにCPUスレッドがいくつあるかどうかを確認する方法は?

どういうわけか使用できることを知っていますが、を/proc/cpuinfo使用して重複行数だけを取得する方法は何ですかgrep

答え1

getconfおそらく最も携帯性に優れているようです。この点:

#!/bin/sh

# Linux and similar...
CPUS=$(getconf _NPROCESSORS_ONLN 2> /dev/null) ||
# FreeBSD (and derivatives), OpenBSD, MacOS and similar...
CPUS=$(getconf NPROCESSORS_ONLN 2> /dev/null) ||
# Solaris and similar...
CPUS=$(ksh93 -c 'getconf NPROCESSORS_ONLN' 2> /dev/null) ||
# Give up...
CPUS=1

関連情報