Использование команды break в качестве аргумента функции

Как насчет использования такого решения?

Функции выполняются в цикле (цикл?). В этом цикле – у меня есть еще одна функция, которая также использует цикл. Когда вторая функция получает НЕТ ответа от пользователя – он отправляет break 2 чтобы остановить цикл, и продолжить действия основного скрипта.

Функция использует переменные, заданные в файле.

Итак, это хорошая идея использования переменных в качестве параметров для функций?

  • назначение утилиты run-parts (8)
  • Преобразование Web-сервера Записанные IP-адреса в DNS
  • Как переместить .bash_profile вдали от дома
  • OS X: как удержать компьютер от сна во время http-соединения
  • условие команды иногда целое число иногда строка
  • Сравнить несколько файлов
  • Переменная как команда; eval vs bash -c
  • Создание счетчика файлов, который содержит скрытые файлы
  • One Solution collect form web for “Использование команды break в качестве аргумента функции”

    Один из вариантов, который может быть более чистым, состоит в том, чтобы вернуть answer 0 или вернуть 1, в зависимости от того, сказал ли пользователь « yes или « no . Затем проверьте значение answer в том месте, где вы его вызываете, и выполняйте только действие, если answer возвращается 0.

    Основываясь на вашем предыдущем скрипте, он будет выглядеть примерно так:

     while tomcat_running && user_wants_to_stop_tomcat; do echo "$tomcat_status_stopping" kill $RUN sleep 2 done function tomcat_running() { check_tomcat_status [ -n "$RUN" ] } function user_wants_to_stop_tomcat() { answer "WARNING: Tomcat still running. Kill it? " } function answer() { while true; do printf "$1" read response case $response in [yY][eE][sS]|[yY]) return 0 ;; [nN][oO]|[nN]) return 1 ;; *) printf "Please, enter Y(yes) or N(no)!\n" ;; esac done } 
    Interesting Posts

    Что такое «сырой режим в гексагоне» от выхода stat?

    Терминал против bash?

    Режим управления системой во встроенных системах

    Изменение размеров окон в i3 с использованием только клавиатуры

    Разница между процессом в фоновом режиме и демоном

    Синхронизация локального каталога с удаленным каталогом в Linux

    Окно окна GNU переименовывает неудобство

    Мессированные настройки звука, теперь у меня нет звука

    Rsync устанавливает новое соединение ssh каждый раз для нескольких файлов или использует одно и то же соединение?

    Обратная сторона `tree` – восстанавливает структуру файлов и каталогов из содержимого текстового файла?

    Двойной дубликат рабочего стола GNOME 3

    Как подключиться к Wi-Fi на Qubes OS?

    Как узнать, какие программы поддерживают потоковый ввод-вывод

    обновлен до Ubuntu 13.04 Server, до-релиз-обновление все еще показывает

    Убедитесь, что машина была перезагружена

    Linux и Unix - лучшая ОС в мире.