Найти Π² Π”Π·Π΅Π½Π΅
Π£Ρ€ΠΎΠΊΠΈ Linux

πŸ–₯️ Π¨Π°Π±Π»ΠΎΠ½Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² Bash: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ скрипты ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ

πŸ–₯️ Π¨Π°Π±Π»ΠΎΠ½Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² Bash: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ скрипты ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ? ΠŸΡ€ΠΈΠ²Π΅Ρ‚, мастСра ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки! πŸš€ Если Ρ‚Ρ‹ Ρ…ΠΎΡ‡Π΅ΡˆΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ скрипты ΠΈ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΡƒΡ‡Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ€ΡƒΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ β€” это Ρ‚Π²ΠΎΠΉ ΠΏΡƒΡ‚ΡŒ! Π Π°Π±ΠΎΡ‚Π° с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈ шаблонами Π² Bash β€” ΠΊΠ»ΡŽΡ‡ ΠΊ гибкости ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. πŸ”‘ ΠŸΠΎΡ‡Π΅ΠΌΡƒ это Π²Π°ΠΆΠ½ΠΎ? - ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ скрипт ΠΏΠΎΠ΄ Π»ΡŽΠ±Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. - Π£ΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС ΠΊΠΎΠ΄Π°. - Π”Π΅Π»Π°Π΅Ρ‚ сцСнарии ΠΌΠ΅Π½Π΅Π΅ «ТСсткими» ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡƒΠΌΠ½Ρ‹ΠΌΠΈ. Как это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ? - Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹: ./script.sh Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ - ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉ значСния Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅: NAME="John" echo "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, $NAME!" - Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²: sed -e "s/USERNAME/$USER/g" template.conf > active.conf - Π’Π½ΡƒΡ‚Ρ€ΠΈ скрипта провСряй Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²: if [ -z "$1" ]; then echo "НСт Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°"; fi - Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ read для ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… сцСнариСв: read -p "Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя: " name Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ β€” Π·Π°Π»ΠΎΠ³ эффСктивности! Π§Π΅ΠΌ ΡƒΠΌΠ½Π΅Π΅ Ρ‚Π²ΠΎΠΈ скрипты, Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сСрвСрС. А Ρ‚Ρ‹

πŸ–₯️ Π¨Π°Π±Π»ΠΎΠ½Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² Bash: ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ скрипты ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ?

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, мастСра ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки! πŸš€

Если Ρ‚Ρ‹ Ρ…ΠΎΡ‡Π΅ΡˆΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ скрипты ΠΈ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΡƒΡ‡Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ€ΡƒΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ β€” это Ρ‚Π²ΠΎΠΉ ΠΏΡƒΡ‚ΡŒ! Π Π°Π±ΠΎΡ‚Π° с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈ шаблонами Π² Bash β€” ΠΊΠ»ΡŽΡ‡ ΠΊ гибкости ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ.

πŸ”‘ ΠŸΠΎΡ‡Π΅ΠΌΡƒ это Π²Π°ΠΆΠ½ΠΎ?

- ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ скрипт ΠΏΠΎΠ΄ Π»ΡŽΠ±Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅.

- Π£ΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС ΠΊΠΎΠ΄Π°.

- Π”Π΅Π»Π°Π΅Ρ‚ сцСнарии ΠΌΠ΅Π½Π΅Π΅ «ТСсткими» ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡƒΠΌΠ½Ρ‹ΠΌΠΈ.

Как это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ?

- Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

./script.sh Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚

- ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉ значСния Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅:

NAME="John"

echo "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, $NAME!"

- Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²:

sed -e "s/USERNAME/$USER/g" template.conf > active.conf

- Π’Π½ΡƒΡ‚Ρ€ΠΈ скрипта провСряй Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²:

if [ -z "$1" ]; then echo "НСт Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°"; fi

- Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ read для ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… сцСнариСв:

read -p "Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя: " name

Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ β€” Π·Π°Π»ΠΎΠ³ эффСктивности! Π§Π΅ΠΌ ΡƒΠΌΠ½Π΅Π΅ Ρ‚Π²ΠΎΠΈ скрипты, Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сСрвСрС.

А Ρ‚Ρ‹ ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ Π² своих bash-скриптах?

ΠŸΡ€ΠΎΠΊΠ°Ρ‡Π°ΠΉ свои скилы Π² Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ ΠΊΠ°Π½Π°Π»Π΅ https://t.me/LinuxSkill Π° ΠΏΡ€ΠΎΠΉΡ‚ΠΈ тСсты Π½Π° Π·Π½Π°Π½ΠΈΠ΅ linux Π² Π±ΠΎΡ‚Π΅ https://t.me/gradeliftbot.

πŸ“© Π—Π°Π²Ρ‚Ρ€Π°: Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Fail2Ban Π·Π° 5 ΠΌΠΈΠ½ΡƒΡ‚! Π’ΠΊΠ»ΡŽΡ‡ΠΈ πŸ”” Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ!