Как сохранить счетчик для нескольких исполнений скрипта?

У меня есть сценарий с условным оператором, и я хочу выяснить, сколько раз выполняется предложение then за несколько запусков одного и того же сценария.

Например:

if [condition]

then

  Some code;
  ACTIVATE COUNTER;

else

  Some code;
  RESET COUNTER;
fi
2
задан 23 May 2015 в 00:53

1 ответ

Необходимо сохранить количество где-нибудь, оно сохранится через несколько выполнений сценария, так как переменные находятся только в памяти для того единственного выполнения.

Самое легкое место находится, вероятно, в файле.

Конкретным путем Вы храните его в файле, зависит от нескольких факторов включая то, сколько раз Вы считаете, и ожидаете ли Вы параллельные выполнения. Простой устойчивый путь был бы похож на это

if CONDITION
then
    echo run >> ~/script-counter
fi

Это добавляет строку в файл каждый раз, когда это работает. (Вы могли бы хотеть выбрать лучшее имя или местоположение для файла для отражения то, что это на самом деле делает в программе.)

Это довольно просто, и будет довольно устойчиво, если сценарий прерван или если Вы выполняете несколько копий одновременно.

Затем можно найти количество с wc -l ~/script-counter

Можно сбросить счетчик, просто освободив файл, с

: > ~/script-counter

(: оболочка встроенная команда, которая ничего не делает, таким образом перенаправление ее в файл освобождает файл.)

2
ответ дан 23 May 2015 в 00:53

Другие вопросы по тегам:

Похожие вопросы: