シェルから6桁のOTP番号を印刷する方法

シェルから6桁のOTP番号を印刷する方法

6桁のランダムOTP番号を生成するスクリプトを作成しました。より少ないコード行で6桁のOTP番号を簡単に取得する方法はありますか?

私のコード:

#!/bin/bash

dynamic_array=()

for (( i =1 ; i<=5 ; i++))
{
    store_digit=$(shuf -i0-9 -n1) ; dynamic_array+=("$store_digit")
}
str_array_value="${dynamic_array[*]}" ; echo "Output : ${str_array_value// /}" 

ベストアンサー1

作成したい場合実際確認できない任意の6桁の文字列ではなく、共有秘密で生成されたOTPトークンを使用できます。oathtool

それ以外の場合は、スチールドライバーのコメントで十分ですprintf '%06d\n' "$(shuf -i0-999999 -n1)"

おすすめ記事