より良い方法があります。 opensslを使用するよりも素数を生成する必要があります。あなたは本当に、しかし、この方法で設定されたこのようなものを使用している場合
(番号の範囲で呼び出すチェックする):
#!/bin/bash
# Usage: $0 <starting_number> <final_number>
N=$1
while ((N <= $2)); do
# use bc to convert hex to decimal
openssl prime $N | awk '/is prime/ {print "ibase=16;"$1}' | bc
let N++
done
あなたはopensslの-生成された乱数でこれを行うにしたい場合は、使用あなたは、小数点のために気にしない場合は
#!/bin/bash
# Usage: $0 <count>
N=$1
while ((N-- > 0)); do
# use bc to convert hex to decimal
openssl rand -hex 256 | xargs openssl prime -hex | awk '/is prime/ {print "ibase=16;"$1}' | bc
done
は、awk '/is prime/ {print $1}'
広告でawk '/is prime/ {print "ibase=16;"$1}' | bc
を置き換える:この(試行回数と呼びます) apted:http://www.madboa.com/geek/openssl/#prime