bash/bcなどにjavascript Math.min()と同等のものはありますか? [コピー]

bash/bcなどにjavascript Math.min()と同等のものはありますか? [コピー]

Math.min()一部のJavaScript計算をbashに変換する必要がありますが、bash、bc、またはシェルの他の計算機に同等のJavaScript関数があるかどうか疑問に思います。

ベストアンサー1

POSIXシェルの使用:

min() {
  min=$1
  shift
  for arg do
    min=$((arg<min?arg:min))
  done
  printf '%s\n' "$min"
}

zsh、およびを除くすべてのkshシェルはyash浮動小数点数をサポートしていません。

POSIXツールボックスの使用:

min() {
  awk 'BEGIN {
    min = ARGV[1]
    for(i = 2; i < ARGC; i++)
      min = ARGV[i] < min ? ARGV[i] : min
    print min
  }' "$@"
}

あなたが持っている場合perl

min() {
  perl -MList::Util=min -le 'print min @ARGV' "$@"
}

またはperl6:

min() {
  perl6 -e '@*ARGS.min.say' "$@"
}

おすすめ記事