Поиск по сайту:

Bash в то время как True Loop


Linux — довольно разнообразная операционная система, когда дело доходит до программирования. Это потому, что она придумала собственное программирование «Bash», которое не поддерживают многие другие операционные системы. Его программирование на Bash поддерживает почти все функции, предоставляемые другим стандартным программированием. Использование «циклов», т. е. циклов while и for, является одним из таких аспектов. Мы можем продолжать выполнять эти циклы, не останавливая их. Поэтому мы решили продемонстрировать концепцию цикла «пока истина» для наших пользователей Bash, которые не знакомы с этой концепцией.

Итак, давайте начнем с входа в систему из системы Ubuntu 20.04. Чтобы начать реализацию примеров, мы должны убедиться, что оболочка терминала была открыта с помощью «Ctrl+Alt+T».

Пример 01:

Давайте начнем эту статью с нашего первого примера использования цикла while с условием «True». Но перед этим нам нужно создать Bash-файл с инструкцией «touch» оболочки терминала Ubuntu 20.04. Назовите файл Bash как «bash.sh». Этот файл будет создан в домашней папке Linux. Вы можете использовать любой встроенный редактор системы Ubuntu 20.04, чтобы открыть и создать код в файле Bash. Вместо использования инструкции «nano» с заголовком файла просто используйте редактор GNU Nano в оболочке терминала. Он откроет ваш пустой файл в терминале, как экран редактора GNU Nano.

Поскольку в нашем коде необходимо использовать цикл while true , нам придется добавить поддержку Bash в первую строку кода. После этого мы начали наш однострочный цикл while с истинным условием. Это истинное условие подразумевает, что цикл будет продолжать выполняться до тех пор, пока какое-либо внешнее действие принудительно не остановит его. В его предложении do мы использовали оператор «echo» для отображения строки символов «Continue…», пока цикл не будет выполнен в оболочке. Предложение done подразумевает, что здесь цикл while завершен.

Давайте проверим, как этот однострочный цикл while «true » выводится в оболочке терминала после сохранения этого кода с помощью сочетания клавиш Ctrl+S. Нажмите Ctrl+X, чтобы выйти из файла. На прикрепленном скриншоте вы можете просмотреть файл кода:

Пришло время выполнить наш код Bash с инструкцией «Bash» в оболочке, как показано на изображении ниже. Вывод показан на следующем снимке экрана для предыдущего кода:

$ bash bash.sh

Этот цикл будет продолжать выполняться и отображать строковое значение «Continue…» в своем операторе эха, пока мы принудительно не остановим его выполнение. Для этого нам нужно нажать сочетание клавиш «Ctrl+Z», чтобы цикл и программу можно было остановить. В противном случае он будет продолжать выполняться, как показано ниже:

Пример 02:

В первом примере мы увидели, как использовать цикл while true для непрерывного отображения строкового значения в оболочке без остановки. В этом примере мы выполним довольно похожее действие с немного другой функциональностью. Итак, вам нужно открыть тот же файл Bash и добавить поддержку Bash через его путь /bin/bash. Инициализируйте переменную «X» значением 1, как показано ниже. Цикл while запущен с условием «true». В его части «do» мы столкнулись с оператором «echo» для отображения текущего значения x. Кроме того, мы использовали встроенное предложение «let» в части «do», чтобы каждый раз увеличивать значение переменной «x» на 1.

После приращения функция сна использовалась для 3-секундного сна во время выполнения. После всех этих 3 шагов в части «выполнить» наш цикл while будет продолжать повторять этот процесс до тех пор, пока программа не будет завершена из-за какой-то внешней активности. Часть «готово» показывает, что цикл завершен. Давайте сохраним этот код и запустим его в оболочке. На прикрепленном скриншоте вы можете просмотреть файл кода:

После запуска этого кода Bash с инструкцией «Bash» цикл while начал выполняться. Он отображает каждое значение «x» с самого начала и приостанавливается на 3 секунды на каждой итерации после приращения. Затем будет распечатано следующее увеличенное значение, и процесс продолжится. Вывод показан на следующем снимке экрана для предыдущего кода:

$ bash bash.sh

Чтобы остановить этот безостановочный цикл, мы нажали Ctrl+Z, как показано ниже. Результат показан на следующем снимке экрана для ранее указанного кода:

Пример 03:

Давайте возьмем наш последний пример, чтобы использовать условие, отличное от true, в цикле while. Итак, мы начали код Bash с инициализации переменной «x» значением 2. Цикл while принимает условие в своих квадратных скобках. Он использует оператор «-lt», чтобы проверить, меньше ли значение «x» 7 или нет. Если условие выполнено, часть «do» будет выполнена. Следовательно, оператор echo будет отображать значение «x» и увеличивать его на 1, используя «x=&(($x+1))», как показано. После достижения 7 цикл автоматически останавливается в соответствии с пунктом «done». Сохраним наш код Ctrl+S и выйдем из него Ctrl+X. На прикрепленном скриншоте вы можете просмотреть файл кода:

Теперь запустите файл Bash с запросом «Bash», показанным на изображении ниже. Цикл выполняется и продолжает отображать значение «x», пока оно не достигнет 7 при увеличении. Вывод показан на следующем снимке экрана для предыдущего кода:

$ bash bash.sh

Заключение:

Это руководство было посвящено использованию цикла «пока истина» в скрипте Bash. Мы обсудили использование цикла while true с очень простыми кодами Bash и обратились к циклу while без «истинного» условия. Это было сделано для четкого сравнения обоих обстоятельств и того, как справляться с ними по отдельности. Мы надеемся, что вы нашли эту статью полезной. Дополнительные советы и информацию можно найти в других статьях Linux Hint.

Статьи по данной тематике: