Ostatnio aktywny 1 week ago

Rewizja ba43f8945c4fc87e9e27c747bf735bc8227da5a4

test.sh Surowy
1#!/usr/bin/env bash
2set -euo pipefail
3
4BOLD=$'\033[1m'
5DIM=$'\033[2m'
6RESET=$'\033[0m'
7RED=$'\033[0;31m'
8GREEN=$'\033[0;32m'
9YELLOW=$'\033[0;33m'
10BLUE=$'\033[0;34m'
11CYAN=$'\033[0;36m'
12
13summary_box() {
14 local width=60
15 local border
16 border=$(printf '─%.0s' $(seq 1 $width))
17 echo ""
18 echo " ${CYAN}${border}${RESET}"
19 while [ $# -gt 0 ]; do
20 printf " ${CYAN}${RESET} %-28s %s\n" "$1" "$2"
21 shift 2
22 done
23 echo " ${CYAN}${border}${RESET}"
24 echo ""
25}
26
27ask_password_visible() {
28 local label=$1
29 local default_password="$(openssl rand -base64 12)"
30 local value
31
32 printf " ${CYAN}?${RESET} $label [%s]: " "$default_password" >&2
33 read -r value </dev/tty
34
35 echo "${value:-$default_password}"
36}
37
38admin_pass=$(ask_password_visible "Password (mixed case, digits, min 12 chars)")
39
40summary_box "Password:" "${admin_pass}"
41
42