πŸ“œ Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ бСсконСчный Ρ†ΠΈΠΊΠ» Π² shell скриптС

by itisgood
Вопрос – Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ бСсконСчный Ρ†ΠΈΠΊΠ» Π² скриптС ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Unix / Linux?

БСсконСчный Ρ†ΠΈΠΊΠ» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выполнСния Π½Π°Π±ΠΎΡ€Π° инструкций с бСсконСчным ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅ΠΌ.

Π’ этом случаС ΠΌΡ‹ создаСм Ρ†ΠΈΠΊΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСтся бСсконСчно, ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ инструкции Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΎΠ½ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ остановится ΠΈΠ·Π²Π½Π΅.

БСсконСчный Ρ†ΠΈΠΊΠ» bash

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания бСсконСчного Ρ†ΠΈΠΊΠ»Π° while Π² скриптС ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ shell.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ скрипта:

#!/usr/bin/env bash

while :

do

Β Β Β Β echo "Press [CTRL+C] to exit this loop..."

Β Β Β Β # Add more instructions here

Β Β Β Β sleep 2

done

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ true Unix с Ρ†ΠΈΠΊΠ»ΠΎΠΌ while, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π΅Π΅ бСсконСчно.

Бинтаксис Ρ†ΠΈΠΊΠ»Π° while с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ true Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ скрипта:

#!/usr/bin/env bash

while true

do

echo "Press [CTRL+C] to exit this loop..."

# Add more instructions here

sleep 2

done

Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ Π² бСсконСчный Ρ†ΠΈΠΊΠ»

Иногда Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· бСсконСчного Ρ†ΠΈΠΊΠ»Π° Π² зависимости ΠΎΡ‚ условия.

Если выполняСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ условиС ΠΈ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ этот бСсконСчный Ρ†ΠΈΠΊΠ» прСрвался ΠΏΡ€ΠΈ этом условии:

#!/usr/bin/env bash


while true

do

Β Β Β Β echo "Press [CTRL+C] to exit this loop..."

Β Β Β Β # Add more instructions here

Β Β Β Β sleep 2

Β Β  if [ condition ]

Β Β  then

Β Β Β Β Β Β  break

Β Β  fi

done

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ Ρ†ΠΈΠΊΠ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ условия.

Loading

You may also like

Leave a Comment