π οΈ ΠΠ°Π±Π°Π²Π½ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΡΠΊΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ bash-ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ ΠΡΠΈΠ²Π΅Ρ, Π»ΡΠ±ΠΈΡΠ΅Π»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ! π ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π³ΠΈΠΈ Π² ΡΠ²ΠΎΠΈ ΡΠΊΡΠΈΠΏΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Π΅ΡΠ΅ ΠΏΡΠΈΡΡΠ½Π΅Π΅ β ΡΡΠΎΡ ΠΏΠΎΡΡ Π΄Π»Ρ Π²Π°Ρ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΡΡ
ΠΏΡΠΈΡΠΌΠ°Ρ
, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π°ΡΠΈ bash-ΡΠΊΡΠΈΠΏΡΡ ΡΠΌΠ½Π΅Π΅ ΠΈ ΠΊΡΠ°ΡΠΈΠ²Π΅Π΅. - ΠΠ°Π²ΠΎΡΠ°ΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ
Π²Π²ΠΎΠ΄ΠΎΠ²: read -p "ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠΈΡΠ»ΠΎ: " num while [[ ! "$num" =~ ^[0-9]+$ ]]; do read -p "ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΈΡΠ»ΠΎ! ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ½ΠΎΠ²Π°: " num done - ΠΠ±ΡΠ°ΡΠ½ΠΎΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ: start=$(date +%s) # Π²Π°Ρ ΠΊΠΎΠ΄ end=$(date +%s) echo "ΠΠ°Π΄Π°ΡΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° Π·Π° $((end-start)) ΡΠ΅ΠΊΡΠ½Π΄!" - ΠΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅ ANSI-ΠΊΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΊΡΠ°ΡΠΎΡΡ Π²ΡΠ²ΠΎΠ΄Π°: echo -e "\e[32mΠΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ\e[0m ΠΈ \e[31mΠΡΠ°ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΡ\e[0m" - ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ
ΠΊΠΎΠΏΠΈΠΉ: cp /etc/important.conf{,.bak_$(date +%Y%m%d)} ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠΈ ΠΏΡΠΈΡΠΌΡ, Π²Ρ ΰ¦¨ΰ¦Ύ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΊΠΎΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΡ, Π½ΠΎ ΠΈ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΡΠΊΡΠΈΠΏΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΠΏΡΠΈΡΡΠ½ΡΠΌΠΈ Π΄Π»Ρ Π³Π»Π°Π·. ΠΠΎΡΠΎΠ²Ρ Π»ΠΈ Π²Ρ ΠΏΠΎΠ³ΡΡΠ·ΠΈΡΡΡΡ Π² Π³Π»ΡΠ±ΠΈΠ½Ρ bash? ΠΠ»ΠΈ ΡΠΆΠ΅ Π΄Π°Π²
π οΈ ΠΠ°Π±Π°Π²Π½ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΡΠΊΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ bash-ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ
17Β ΡΠ΅Π½ΡΡΠ±ΡΡΒ 202517Β ΡΠ΅Π½Β 2025
3
1 ΠΌΠΈΠ½