Как напечатать 6-значный номер одноразового пароля в оболочке

по-видимому, в libsolvесть ошибка, которая вызывает проблему "исключения", с которой вы столкнулись (см. здесь и здесь). DNF использует libsolv, который является внешним преобразователем зависимостей.

Вы можете установить docker -ce с помощью следующей команды:

dnf --disablerepo=AppStream install docker-ce

0
09.11.2020, 15:39
2 ответа

Если вы хотите сгенерировать настоящие OTP-токены, сгенерированные из общего секрета, а не просто случайные строки из шести -цифр, которые вы не можете проверить, вы можете использоватьoathtool.

В противном случае достаточно комментария Steeldriver:printf '%06d\n' "$(shuf -i0-999999 -n1)".

1
18.03.2021, 22:51

Для 6 десятичных цифр нам понадобится случайное число, длина которого превышает 15 -бит. Здесь я буду использовать 30 -бит случайных:

((RND=RANDOM<<15|RANDOM)) ; echo ${RND: -6}

РЕДАКТИРОВАТЬ :Всего пара тестов, для перспективы...

~# time for i in {0..2000} ;do printf '%06d\n' "$(shuf -i0-999999 -n1)" >/dev/null ;done

real    0m13.814s
user    0m9.573s
sys     0m4.302s

~# time for i in {0..2000} ;do ((RND=RANDOM<<15|RANDOM)) ; echo ${RND: -6} >/dev/null ;done

real    0m0.120s
user    0m0.101s
sys     0m0.019s
0
18.03.2021, 22:51

Теги

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