Как с помощью POSIX узнать, сколько потоков ЦП у меня есть в сценарии оболочки?

Скорее всего, globstarне установлен в сценарии оболочки.

Вы можете включить его с помощью shopt -s globstar.

#!/bin/bash
set -x
shopt -s globstar
npm run test:1 **/"$1".test.js
1
28.01.2020, 09:02
1 ответ

getconf может быть наиболее переносимым, см., например, этот Gist:

#!/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
5
28.04.2021, 23:25

Теги

Похожие вопросы