1

Будем благодарны за любые альтернативные предложения о том, как добавить пробный запуск.

Я пытаюсь создать функцию, которая работает в режиме «всухую» или в режиме реального времени.

например (псевдокод):

function do-stuff() {
   dry_run_or_real 
   brew install java
   for x in dir ; do echo $x ; done
}

function dry_run_or_real() {
   if [ ! -z "$GLOBAL_DRY_RUN" ] ; then 
      echo "We would do this:$*"
   else 
      # we are actually running the code
      $* 
   fi
}

Если установлен GLOBAL_DRY_RUN, это текст:

We would do this:
brew install java
for x in dir ; do echo $x ; done

НО вышеуказанные команды не будут выполнены.

Большим ограничением является то, что тело do-stuff должно иметь только минимальные изменения для поддержки кода пробного запуска:

  1. у нас будет много, много вспомогательных функций

  2. Функции будут добавлены и отредактированы неопытными разработчиками, поэтому, возможно, что-нибудь сложное будет сломано.

0