Spec-Zone.ru › Fish 3.1

for - выполнить набор команд несколько раз.

Синопсис

for VARNAME in [VALUES...]; COMMANDS...; end

Описание

for является конструкцией цикла. Она будет выполнять команды, указанные COMMANDS, несколько раз. На каждой итерации локальная переменная, указанная VARNAME, получает новое значение из VALUES. Если VALUES пусто, COMMANDS вообще не будет выполнено. Переменная VARNAME видна после завершения цикла и будет содержать последнее присвоенное ей значение. Если VARNAME не существует, она будет создана в локальном пространстве имён. Для наших целей, если блок for находится внутри функции, должна существовать локальная переменная с таким же именем. Если блок for не вложен в функцию, будут использоваться глобальные и универсальные переменные с таким же именем, если они существуют.

Пример

for i in foo bar baz; echo $i; end

# would output:
foo
bar
baz

Примечания

Переменная VARNAME была локальной для блока for в версиях до 3.0.0. Это означает, что если вы сделали что-то вроде этого:

for var in a b c
    if break_from_loop
        break
    end
end
echo $var

Последнее присвоенное значение переменной var при завершении цикла не было бы доступно за пределами цикла. То, что echo $var записало бы, зависело от значения, которое было у неё до запуска цикла. Вероятнее всего, ничего.

© 2019 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.1/cmds/for.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API