-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlib.sh
More file actions
61 lines (52 loc) · 1.49 KB
/
Copy pathlib.sh
File metadata and controls
61 lines (52 loc) · 1.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/usr/bin/env bash
# lib.sh - Componentes de interfaz compartidos
# Colores
export COLOR_RESET='\033[0m'
export COLOR_INFO='\033[1;34m'
export COLOR_SUCCESS='\033[1;32m'
export COLOR_WARN='\033[1;33m'
export COLOR_ERROR='\033[1;31m'
export COLOR_BOLD='\033[1m'
print_banner() {
echo -e "${COLOR_INFO}"
echo " ______ ____ __"
echo " |___ /___ ___ / __/ ____ ___ / /"
echo " / / -_/ -_) / /_/ / / / -_) _ / _ \\"
echo " /___/\__/\___/ \__/\_,_/\__/\__,_/_.__/"
echo -e "${COLOR_RESET}"
}
get_sys_info() {
local os_name=$(grep PRETTY_NAME /etc/os-release | cut -d'"' -f2)
echo -e "${COLOR_BOLD}Sistema:${COLOR_RESET} $os_name | ${COLOR_BOLD}Usuario:${COLOR_RESET} $(whoami)"
}
ui_init() {
clear
print_banner
get_sys_info
echo -e "${COLOR_INFO}-----------------------------------------"
echo -e " $1"
echo -e "-----------------------------------------${COLOR_RESET}\n"
}
ui_step() {
echo -e "${COLOR_INFO}[*]${COLOR_RESET} $1"
}
ui_success() {
echo -e "${COLOR_SUCCESS}[✓]${COLOR_RESET} $1"
}
ui_error() {
echo -e "${COLOR_ERROR}[!]${COLOR_RESET} $1" >&2
}
ui_input() {
local prompt=$1
# Imprimir el prompt a stderr para que no sea capturado por $(...)
echo -en "${COLOR_INFO}?>${COLOR_RESET} $prompt: " >&2
read -r result
echo "$result"
}
ui_secret() {
local prompt=$1
echo -en "${COLOR_INFO}?>${COLOR_RESET} $prompt (oculto): " >&2
read -r -s result
echo >&2
echo "$result"
}