Linux "ForEach" буйругу менен тизмеси Iterators Build

Качан программалоо , ForEach буйрук укурук өзгөрмөлөр бир же бир нече тизмелерден баалуулуктарын өзүнө бир укурук ишке ашырат. Жөнөкөй учурда бир укурук өзгөрмө бар, өзгөрмө_аты, бир тизме, тизме, ошол өзгөрмө_аты жүктөлсүн баалуулуктардын тизмеси. Дене аргумент бир TCL жазуусу болот. Тизмесинин ар бир элементтин (алгачкы жана акыркы тартипте) үчүн, ForEach Lindex буйрук элементин алуу үчүн колдонулуп келген болсо, анда денени ишке ашыруу үчүн TCL котормочунун чакырат деп өзгөрмө_аты үчүн элементтин мазмунун тапшырган.

Кыскача баяндама

ForEach өзгөрмө_аты тизме орган
ForEach varlist1 тизме1? varlist2 list2 ...? дене

талкулоо

Жалпы учурда, ошол жерде бир канча балл тизмеси болушу мүмкүн (мисалы, тизме1 жана list2), жана ар бир маанини тизме менен укурук өзгөрмөлөр (мисалы, varlist1 жана varlist2) тизмеси менен байланышта болушу мүмкүн. Кодду ар бир кадамынын учурунда, ар бир varlist жана өзгөрмө тиешелүү тизмесинен алып ырааттуу баалуулуктарды дайындалат. Ар бир тизмеде баалуулуктар алгачкы жана акыркы үчүн колдонулат, жана ар бир маанини так бир жолу колдонулат. укурук кыйытып жалпы саны бардык балл тизмесинен бардык баалуулуктарды пайдаланууга жетиштүү болот. бир маани тизмеси ар бир кадамынын анын укурук өзгөрүүлөрдүн бири үчүн жетиштүү элементтерди жок болсо, бош баалуулуктар жок элементтер үчүн колдонулат.

Чүнчүү жана мындан ары да сөздөр дененин ичине дуба болушу мүмкүн, ошол эле натыйжа менен буйругу эле. Бош сап кайтарат oreach е.

мисалы,

Төмөнкү укурук бир тизме элементтерин жуп кайталоо үчүн укурук өзгөрмөлөр Мен жана й колдонот.

белгиленген х {} {ForEach иликтөөлөр} {ABCDEF} {lappend X $ J $ мен} # X наркы "badcfe" # болуп айлантып 3 сапарлардын бар.

Кийинки луп мен жана к катар эки тизмеге кайталоо үчүн колдонот.

белгиленген х {} ForEach мен {ABC} к {defg} {lappend X $ мен $ J} # X наркы "adbecf {} г" # болуп айлантып 4 сапарлардын бар.

эки түрлөрүн төмөнкүдөй бир мисал менен бириктирилет.

белгиленген х {} ForEach мен {ABC} {жк} {defg} {lappend X $ мен $ J $ к} # X наркы "adebfgc {} {}" деген # айлантып 3 сапарлардын бар.

Кошумча маалыматтар

Бир нече байланыштуу буйрук ForEach ичинде менен иштешет:

Анткени Linux бөлүштүрүү жана ядро-релиз өлчөмү ар бир буйругу атайын өзгөчө колдонулуп келе жатканын көрүп, бир киши (% адам) колдонуу ЭЭМ .