Skip to main content

Създайте списък итератори с командата "foreach" на Linux

Battlestar Galactica Deadlock Resurrection Season 2 Preview BSG Deadlock (Юни 2025)

Battlestar Galactica Deadlock Resurrection Season 2 Preview BSG Deadlock (Юни 2025)
Anonim

Когато програмирате,за всеки команда изпълнява цикъл, при който променливите на веригата приемат стойностите от един или повече списъци. В най-простия случай има една променлива линия, VARNAME , и един списък, списък , това е списък на стойностите, на които да се присвои VARNAME , Най- тяло аргументът е Tcl скрипт. За всеки елемент от списък (от първо до последно),за всеки присвоява съдържанието на елемента на VARNAME като че лиLindexкомандата беше използвана за извличане на елемента, а след това се обади на Tcl интерпретатора да изпълни тяло .

резюме

за всеки орган на списъка на вармите

за всеки varlist1 list1 ? varlist2 list2 … ? тяло

дискусия

В общия случай може да има повече от един списък с стойности (напр. List1 и List2 ) и всеки списък с стойности може да бъде асоцииран със списък от променливи на веригата (напр. varlist1 и varlist2 ). По време на всяка итерация на цикъла, променливите на всяка varlist получават се последователни стойности от съответната списък , Стойности във всяка списък се използват от първия до последния и всяка стойност се използва точно веднъж. Общият брой итерации на линия е достатъчно голям, за да използва всички стойности от всички списъци с стойности. Ако списъкът с стойности не съдържа достатъчно елементи за всяка една от променливите в цикъл във всяка итерация, за липсващите елементи се използват празни стойности.

Най-почивка ипродължи изявленията могат да бъдат извиквани вътре тяло , със същия ефект като в за команда. Еoreach връща празен низ.

Примери

Използва се следният цикъл аз и к като променливи на цикъла за итерация над двойки елементи от един списък.

(x, y, y, y) {a b c d e f} {lappend x $ j $ i} # Стойността на x е "b a d c f e" # Има 3 повторения на цикъла.

Следващата линия се използва аз и к да се повторят паралелно над два списъка.

(x, y), x (x), (x), x (x) x (x) x (x) x (x)

Двете форми се комбинират в следващия пример.

(x, y)} {x}} {x}} {x} {x} {x} {x}

бележки

Свързани са няколко свързани командиза всеки включително:

  • за (п)
  • докато (п)
  • почивка (п)
  • продължи (п)

Тъй като нивата на разпространение и ядрото на Linux варират, използвайте мъж команда ( % man ), за да видите как конкретно се използва команда на вашия компютър.