Skip to main content

Линук - Уник наредба: екец

Anonim

екец - Позови подпроцес (и)

Синопсис

екец? прекидачи ? арг ? арг … ?

Опис

Ова наредба третира своје аргументе као спецификацију једног или више подпроцеса за извршавање. Аргументи су у облику стандардног цевовода за љуске, где свака арг постаје једна реч команде, а свака посебна команда постаје подпроцес.

Ако су почетни аргументиекец почети са- онда се третирају као прекидачи у командној линији и нису део спецификације гасовода. Тренутно подржани следећи прекидачи:

-кеепневлине

Задржава нову линију на излазу из цевовода. Нормално ће бити избрисана нова линија.

--

Означава крај прекидача. Аргумент који следи овај ће бити третиран као први арг чак и ако почиње са а-.

Ако арг (или пар арг ') има један од облика описаних испод, а затим га користиекец да контролише проток инпута и излаза између подпроцеса (ес). Такви аргументи неће бити прослеђени подпроцесу. У облицима као што су `` < назив документа '' назив документа може бити или у посебном аргументу од `` <'' или у истом аргументу без интервеног простора (тј. `` << назив документа '').

|

Одваја различите команде у цјевоводу. Стандардни излаз претходне команде ће се прикључити на стандардни улаз следеће наредбе.

|&

Одваја различите команде у цјевоводу. И стандардни излаз и стандардна грешка претходне команде ће се прикључити на стандардни улаз следеће наредбе. Овај облик преусмеравања преклапа облике као што су 2> и> &.

< назив документа

Датотека именована назив документа се отвара и користи као стандардни улаз за прву команду у плиноводу.

<@ филеИд

ФилеИд мора бити идентификатор за отворену датотеку, као што је повратна вредност из претходног позиваотворен. Користи се као стандардни улаз за прву команду у плиноводу. ФилеИд морају бити отворени за читање.

<< вредност

Вредност се преноси на прву команду као свој стандардни улаз.

> назив документа

Стандардни излаз из последње команде се преусмерава на датотеку с именом назив документа , преписујући свој претходни садржај.

2> назив документа

Стандардна грешка из свих команди у плиноводу се преусмерава на датотеку названу назив документа , преписујући свој претходни садржај.

>& назив документа

Оба стандардна излаза из последње команде и стандардна грешка из свих команди се преусмеравају на датотеку названу назив документа , преписујући свој претходни садржај.

>> назив документа

Стандардни излаз из последње команде се преусмерава на датотеку с именом назив документа , додајући томе, уместо да га преписује.

2>> назив документа

Стандардна грешка из свих команди у плиноводу се преусмерава на датотеку названу назив документа , додајући томе, уместо да га преписује.

>>& назив документа

Оба стандардна излаза из последње команде и стандардна грешка из свих команди се преусмеравају на датотеку названу назив документа , додајући томе, уместо да га преписује.

>@ филеИд

ФилеИд мора бити идентификатор за отворену датотеку, као што је повратна вредност из претходног позиваотворен. Стандардни излаз из последње команде се преусмерава на филеИд фајл, који мора бити отворен за писање.

2>@ филеИд

ФилеИд мора бити идентификатор за отворену датотеку, као што је повратна вредност из претходног позиваотворен. Стандардна грешка из свих команди у плиноводу је преусмерена на филеИд филе. Датотека мора бити отворена за писање.

>&@ филеИд

ФилеИд мора бити идентификатор за отворену датотеку, као што је повратна вредност из претходног позиваотворен. И стандардни излаз из последње команде и стандардне грешке из свих команди су преусмерени на филеИд филе. Датотека мора бити отворена за писање.

Ако стандардни излаз није преусмерен онда јеекец наредба враћа стандардни излаз из последње команде у плиноводу. Ако било која команда у изводу излази необично или је убијена или суспендована, ондаекец враћа грешку и порука о грешци ће укључити излаз цевовода праћене порукама о грешци које описују абнормалне закључке; тхееррорЦоде варијабла ће садржати додатне информације о последњем абнормалном прекиду. Ако било која команда пише у своју стандардну датотеку грешака и та стандардна грешка није преусмерена, тадаекец враћа грешку; порука о грешци ће укључити стандардни излаз плиновода, а затим слиједи поруке о абнормалним завршеткама (ако их има), а затим стандардни излаз грешке.

Ако је последњи карактер резултата или поруке о грешци нова линија, тај знак се обично брише из резултата или поруке о грешци. Ово је у складу са другим Тцл повратним вриједностима, које се обично не завршавају са новим линијама. Међутим, ако-кеепневлине је назначено, онда се задртана нова линија.

Ако стандардни унос није преусмерен са `` <'' или `` << '' или `` <@ '', онда је стандардни улаз за прву команду у плиноводу узет из тренутног стандардног улаза апликације.

Ако је последњи арг је `` & '' онда ће се гасовод извршити у позадини. У овом случајуекецкоманда ће вратити листу чији су елементи идентификатори процеса за све подпроцесе у плиноводу.Стандардни излаз из последње команде у плиноводу ће се пребацити на стандардни излаз апликације, ако није преусмерен, а излазне грешке из свих команди у цјевоводу ће се прећи у стандардну датотеку грешке апликације, осим ако се не преусмјери.

Прва реч у свакој команди узима се као име команде; замјена тилде се врши на њој, а ако резултат не садржи косе, онда ће директоријуми у окружењу ПАТХ окружење тражити извршну датотеку по датом имену. Ако име садржи косу тачку, онда се мора позивати на извршну датотеку која се може добити од тренутног директоријума. Није извршено никакво "ширење" или друге замене које су на слици, на аргументима за наредбе.

Питања преноса

Виндовс (све верзије)

Читање или писање у утичницу, користећи ``@ филеИд '' нотација, не ради. Када читате из утичнице, 16-битна ДОС апликација ће висити и 32-битна апликација ће се одмах вратити са крајњим фајлом. Када било који тип апликације пише у сокет, информације се уместо тога шаљу на конзолу, ако је присутна или је одбачена.

Тк видгет за текст конзоле Тк не пружа стварне стандардне ИО могућности. Под Тк, када се преусмерава са стандардног уноса, све апликације ће видети тренутни крај датотеке; информације преусмерене на стандардни излаз или стандардну грешку биће одбачене.

Било да се шаљу напред или назад, прихваћени су као сепаратори путања за аргументе Тцл наредбама. Када извршавате апликацију, назив путања који је наведен за апликацију може такође садржати кретање напред или назад као сепаратор путање. Међутим, имајте на уму да већина Виндовс апликација прихвата аргументе са прослеђивањем сличица само као раздјелнике опције и курзиву само у стазама. Сваки аргумент за апликацију која наводи име стазе са кретањима прослеђивања неће се аутоматски претварати да би користио знак за обрнуто. Ако један аргумент садржи слијепе кретања као сепаратор путање, то може или не мора бити препознато као име стазе, у зависности од програма.

Поред тога, када позивате 16-битну ДОС или Виндовс 3.Кс апликацију, сва имена стаза морају користити кратки, шифрирани формат (нпр., Користећи `апплба ~ 1.деф '' умјесто` апплбакери.дефаулт '' ).

Две или више сломова напред или назад у низу на путу односе се на мрежни пут. На пример, једноставно повезивање роот директоријумац: / са поддиректоријумом/ виндовс / систем ће датиц: // виндовс / систем (две сласхес заједно), што се односи на тачку монтирања која се називасистем на машини која се зовевиндовсц: / је игнорисана), и није еквивалентнац: / виндовс / систем, који описује директоријум на тренутном рачунару. Тхефиле придружите команду треба користити за повезивање компоненти путање.

Виндовс НТ

Када покушавате да извршите апликацију,екец прво тражи име како је наведено. Затим,.цом, .еке, и.шишмиш додају се на крај наведеног имена и тражи дуже име. Ако име именика није назначено као део имена апликације, следећи директоријуми се аутоматски претражују у редоследу покушаја лоцирања апликације:

Директоријум из кога је изведена Тцл извршна датотека.Тренутни директоријум.Виндовс НТ 32-битни системски директориј.Виндовс НТ 16-битни системски директоријум.Виндовс НТ хоме директоријум.Директоријуми наведени на путањи.

Да би се извршила наредба за љуске, као што судир икопирај, позиваоца мора да прикаже "`цмд.еке / ц'' до жељене команде.

Виндовс 95

Када покушавате да извршите апликацију,екец прво тражи име како је наведено. Затим,.цом, .еке, и.шишмиш додају се на крај наведеног имена и тражи дуже име. Ако име именика није назначено као део имена апликације, следећи директоријуми се аутоматски претражују у редоследу покушаја лоцирања апликације:

Директоријум из кога је изведена Тцл извршна датотека.Тренутни директоријум.Системски систем Виндовс 95.Виндовс 95 хоме директоријум.Директоријуми наведени на путањи.

Да би се извршила наредба за љуске, као што судир икопирај, позиваоца мора да прикаже "`цомманд.цом / ц'' до жељене команде.

Када 16-битна ДОС апликација има стандардни унос са конзоле и онда одустане, све накнадно покретање 16-битних ДОС апликација ће видети стандардни улаз који је већ затворен. 32-битне апликације немају овај проблем и правилно ће се покренути, чак и након што 16-битни ДОС апликација мисли да је стандардни улаз затворен. У овом тренутку не постоји познато решење за ову грешку.

Преусмеравање измеђуНУЛ: уређај и 16-битна апликација не раде увек. Када преусмераватеНУЛ:, неке апликације могу висити, остале ће добити бесконачни ток `` 0к01 '' бајтова, а неки ће заправо исправно добити одмах завршни фајл; чини се да понашање овиси о нечему што је састављено у самој апликацији. Када преусмеравате више од 4К или такоНУЛ:, неке апликације ће висити. Горе наведени проблеми се не дешавају са 32-битним апликацијама.

Све ДОС 16-битне апликације се покрећу синхроно. Сви стандардни улази из цеви у 16-битну ДОС апликацију прикупљају се у привременом фајлу; други крај цеви мора бити затворен пре него што 16-битна ДОС апликација почне да се извршава.Сви стандардни излази или грешке из 16-битне ДОС апликације на цев се сакупљају у привремене датотеке; апликација мора да се прекине пре него што се привремени фајлови преусмеравају на следећу фазу гасовода. Ово је због решења за Виндовс 95 буг у имплементацији цеви, и како је стандардна Виндовс 95 ДОС лука обрађивала саме цијеви.

Одређене апликације, као што суцомманд.цом, не треба интерактивно извршити. Апликације које директно приступају прозору конзоле, а не читање са њиховог стандардног уноса и писања на њихов стандардни излаз, могу пропасти, објесити Тцл или чак објесити систем ако њихов прозор за приватне конзоле није доступан.

Мацинтосх

Тхеекец команда није имплементирана и не постоји под Мацинтосх-ом.

Уник

Тхеекец команда је у потпуности функционална и ради како је описано.

Такође видети

грешка (н), отворена (н)

Кључне речи

извршавање, цјевовод, преусмеравање, подпроцес

Важно: Користити човек команда ( % ман ) да видите како се на вашем рачунару користи команда.