La multi ani de 1 Iunie! ziua in care toti redevenim copii
La mulți ani de 1 Iunie! Astăzi este ziua în care ignorăm oficial durerile de spate și ne amintim că, undeva sub straturile de responsabilități, încă suntem copii capabili să mănânce o pungă întreagă de pufuleți la micul dejun.
Pentru copii, regulile de joc de astăzi sunt simple: alergați până transpirați complet, săriți cu entuziasm în toate bălțile, puneți cate 100 de întrebări pentru a vă satisface curiozitatea și, mai ales, refuzați categoric să purtați șosete asortate.
În calitatea de adult-copil, noi "trișăm" savurând libertatea la maximum: cumpărăm dulciuri fără să cerem voie nimănui, ne uităm la desene animate în loc să facem curățenie, ne suparăm instant pe oricine ne strică "jocurile" și, într-o întorsătură totală de situație, mergem la culcare devreme, dar de data asta pur și simplu pentru că vrem.
Sfatul meu de adult-copil? Puneți o pauză grijilor. Lăsați seriozitatea pentru mâine și faceți ceva complet absurd și distractiv astăzi. Până la urmă, maturizarea este doar o capcană!
Totuși sunteți pe un blog despre Linux, așa că vă las un script de 1 Iunie.
#!/bin/bash
# Culori ANSI
RED='\033[1;31m'
GREEN='\033[1;32m'
BLUE='\033[1;36m'
YELLOW='\033[1;33m'
MAGENTA='\033[1;35m'
RESET='\033[0m'
# Preluare dinamică și formatare nume utilizator (Prima literă mare)
USER_NAME=$(whoami | awk '{print toupper(substr($0,1,1))substr($0,2)}')
# Funcție pentru calcularea centrului ecranului (linii și coloane)
center_screen() {
local lines=$(tput lines)
local cols=$(tput cols)
# Trimite cursorul aproximativ în mijlocul ecranului
tput cup $((lines / 2 - 3)) 0
}
# Funcție pentru efectul de tastare dinamică (centrat)
type_effect() {
local text="$1"
local delay=0.03
local cols=$(tput cols)
# Centrează textul pe orizontală
printf "%*s" $(( (cols + ${#text}) / 2 )) "" | sed "s/ / /g"
tput cub ${#text}
for (( i=0; i<${#text}; i++ )); do
echo -n "${text:$i:1}"
sleep $delay
done
echo ""
}
# Funcție pentru alinierea graficii ASCII pe centrul ecranului
print_centered_ascii() {
local cols=$(tput cols)
while IFS= read -r line; do
printf "%*s\n" $(( (cols + ${#line}) / 2 )) "$line"
done <<< "$1"
}
# Definiții grafică ASCII corectate pentru aliniere perfectă
HEART_BIG=" ,d88b.d88b,
88888888888
\`Y8888888Y'
\`Y888Y'
\`Y\`"
HEART_SMALL=" ,d8b.d8b,
888888888
\`Y8888Y'
\`Y\`"
# Vector de culori pentru animația dinamică
COLORS=($RED $GREEN $BLUE $YELLOW $MAGENTA)
# Animația de pulsare (pulsează de 6 ori cu culori aleatorii)
tput civis # Ascunde cursorul pe durata animației
for i in {1..6}; do
RANDOM_COLOR=${COLORS[$((RANDOM % ${#COLORS[@]}))]}
clear
center_screen
echo -e "${RANDOM_COLOR}"
print_centered_ascii "$HEART_BIG"
sleep 0.25
clear
center_screen
echo -e "${RANDOM_COLOR}"
print_centered_ascii "$HEART_SMALL"
sleep 0.25
done
tput cnorm # Afișează cursorul înapoi
# Ecranul final festiv
clear
center_screen
echo -e "${RED}"
print_centered_ascii "$HEART_BIG"
echo -e "${RESET}\n"
# Mesaje festive centrate dinamic
MESAJ_LA_MULTI_ANI="★ LA MULȚI ANI DE 1 IUNIE, $USER_NAME! ★"
MESAJ_SUBTITLU="Copilăria este starea de spirit în care totul este posibil."
# Afișare mesaje cu spațiere centrală
COLS=$(tput cols)
echo -e "${GREEN}"
printf "%*s\n" $(( (COLS + ${#MESAJ_LA_MULTI_ANI}) / 2 )) "$MESAJ_LA_MULTI_ANI"
echo -e "${YELLOW}"
printf "%*s\n\n" $(( (COLS + ${#MESAJ_SUBTITLU}) / 2 )) "$MESAJ_SUBTITLU"
echo -e "${RESET}"
# Listă extinsă de activități
ACTIVITATI=(
"Ieși în parc și dă-te în leagăn!"
"Mănâncă o înghețată uriașă cu trei arome."
"Uită-te la desenele animate preferate din copilărie."
"Construiește o fortăreață din perne și pături în sufragerie."
"Joacă-te „Ascunsa” sau „Țară, țară, vrem ostași!”"
)
RANDOM_INDEX=$((RANDOM % ${#ACTIVITATI[@]}))
MESAJ_ACTIVITATE="Ideea ta de distracție pentru azi, $USER_NAME: ${ACTIVITATI[$RANDOM_INDEX]}"
# Rularea textului cu efect dinamic pe centru
echo -e -n "${BLUE}"
type_effect "$MESAJ_ACTIVITATE"
echo -e "${RESET}\n"
RED='\033[1;31m'
GREEN='\033[1;32m'
BLUE='\033[1;36m'
YELLOW='\033[1;33m'
MAGENTA='\033[1;35m'
RESET='\033[0m'
# Preluare dinamică și formatare nume utilizator (Prima literă mare)
USER_NAME=$(whoami | awk '{print toupper(substr($0,1,1))substr($0,2)}')
# Funcție pentru calcularea centrului ecranului (linii și coloane)
center_screen() {
local lines=$(tput lines)
local cols=$(tput cols)
# Trimite cursorul aproximativ în mijlocul ecranului
tput cup $((lines / 2 - 3)) 0
}
# Funcție pentru efectul de tastare dinamică (centrat)
type_effect() {
local text="$1"
local delay=0.03
local cols=$(tput cols)
# Centrează textul pe orizontală
printf "%*s" $(( (cols + ${#text}) / 2 )) "" | sed "s/ / /g"
tput cub ${#text}
for (( i=0; i<${#text}; i++ )); do
echo -n "${text:$i:1}"
sleep $delay
done
echo ""
}
# Funcție pentru alinierea graficii ASCII pe centrul ecranului
print_centered_ascii() {
local cols=$(tput cols)
while IFS= read -r line; do
printf "%*s\n" $(( (cols + ${#line}) / 2 )) "$line"
done <<< "$1"
}
# Definiții grafică ASCII corectate pentru aliniere perfectă
HEART_BIG=" ,d88b.d88b,
88888888888
\`Y8888888Y'
\`Y888Y'
\`Y\`"
HEART_SMALL=" ,d8b.d8b,
888888888
\`Y8888Y'
\`Y\`"
# Vector de culori pentru animația dinamică
COLORS=($RED $GREEN $BLUE $YELLOW $MAGENTA)
# Animația de pulsare (pulsează de 6 ori cu culori aleatorii)
tput civis # Ascunde cursorul pe durata animației
for i in {1..6}; do
RANDOM_COLOR=${COLORS[$((RANDOM % ${#COLORS[@]}))]}
clear
center_screen
echo -e "${RANDOM_COLOR}"
print_centered_ascii "$HEART_BIG"
sleep 0.25
clear
center_screen
echo -e "${RANDOM_COLOR}"
print_centered_ascii "$HEART_SMALL"
sleep 0.25
done
tput cnorm # Afișează cursorul înapoi
# Ecranul final festiv
clear
center_screen
echo -e "${RED}"
print_centered_ascii "$HEART_BIG"
echo -e "${RESET}\n"
# Mesaje festive centrate dinamic
MESAJ_LA_MULTI_ANI="★ LA MULȚI ANI DE 1 IUNIE, $USER_NAME! ★"
MESAJ_SUBTITLU="Copilăria este starea de spirit în care totul este posibil."
# Afișare mesaje cu spațiere centrală
COLS=$(tput cols)
echo -e "${GREEN}"
printf "%*s\n" $(( (COLS + ${#MESAJ_LA_MULTI_ANI}) / 2 )) "$MESAJ_LA_MULTI_ANI"
echo -e "${YELLOW}"
printf "%*s\n\n" $(( (COLS + ${#MESAJ_SUBTITLU}) / 2 )) "$MESAJ_SUBTITLU"
echo -e "${RESET}"
# Listă extinsă de activități
ACTIVITATI=(
"Ieși în parc și dă-te în leagăn!"
"Mănâncă o înghețată uriașă cu trei arome."
"Uită-te la desenele animate preferate din copilărie."
"Construiește o fortăreață din perne și pături în sufragerie."
"Joacă-te „Ascunsa” sau „Țară, țară, vrem ostași!”"
)
RANDOM_INDEX=$((RANDOM % ${#ACTIVITATI[@]}))
MESAJ_ACTIVITATE="Ideea ta de distracție pentru azi, $USER_NAME: ${ACTIVITATI[$RANDOM_INDEX]}"
# Rularea textului cu efect dinamic pe centru
echo -e -n "${BLUE}"
type_effect "$MESAJ_ACTIVITATE"
echo -e "${RESET}\n"

Comments