Exec - Линуксийн команд - Unix Command

гүйцэтгэгч - дэд процедурыг ашиглах

Ерөнхий агуулга

гүйцэтгэх ? шилжүүлэгч ? arg ? Ар ... ?

Тодорхойлолт

Энэ тушаал нь түүний аргументуудыг нэг буюу хэд хэдэн дэд процессийн тодорхойлолтын дагуу тодорхойлдог. Аргументууд нь аргумент бүр нь нэг тушаалын нэг үг болох бөгөөд стандарт бүрхүүл хоолойн хэлбэрийг авдаг бөгөөд тусгай тушаал бүр дэд процесс болдог.

Хэрэв эхлээд эхлүүлэхийн тулд өгөх аргументууд нь тэдгээрийг тушаалын мөрийн унтраалгаар авч үзэж байгаа бөгөөд дамжуулах шугамын тодорхойлолт хэсэг биш юм. Дараах сэлгүүрүүд одоогоор дэмжигдэж байна:

-тушаал шинэ

Хоолойн гарц дахь шинэ шугамыг хадгалж үлдсэн. Ер нь шинэ төгс мөрийг устгах болно.

-

Свичийн төгсгөлийг тэмдэглэнэ. Энэ араас баримталж буй аргумент нь эхлэлээсээ эхлээд л эхэлсэн ч гэсэн аргумент гэж үзэх болно.

Хэрэв ар arg (эсвэл ар args ) доор тайлбарласан хэлбэрүүдийн аль нэгийг хэрэглэвэл дэд процесс доторх оролт, гаралтын урсгалыг хянахын тулд гүйцэтгэгч ашигладаг. Ийм аргументууд нь дэд процесс руу дамжуулагдахгүй. `` < FileName '' fileName гэх мэтийн хэлбэрүүд нь `` `` `'' эсвэл '` `` `` ` файлын нэр ' 'гэсэн нэмэлт өгөгдөлтэй байж болно.

|

Хоолой дахь тусгай командуудыг салгана. Өмнөх тушаалын стандарт гаралтыг дараагийн тушаалын стандарт оролтод оруулж болно.

| &

Хоолой дахь тусгай командуудыг салгана. Өмнөх командын стандарт гаралт болон стандарт алдааг хоёулангийнх нь тушаалын стандарт оролтод оруулж болно. Дахин шилжүүлэх хэлбэр нь 2> ба> &.

Файлын нэрээр нэрлэгдсэн файлыг нээж, дамжуулах хоолой дээрх эхний тушаалын стандарт оруулга болгон ашигладаг.

<@ fileId

FileId нь өмнөх дуудлагаас нээх утга гэх мэт нээлттэй файлын тодорхойлогч байх ёстой. Энэ нь хоолой дахь эхний тушаалын стандарт оролт болж ашиглагддаг. FileId уншихад нээгдсэн байх ёстой.

<< утга

Утга нь эхний тушаал руу стандарт оролтоор дамжигддаг.

> fileName

Сүүлийн тушаалын стандарт гаралтыг fileName нэртэй файл руу чиглүүлж өмнөх агуулгыг дарж бичнэ.

2> fileName

Хоолой дахь бүх тушаалын стандарт алдааг fileName нэртэй файл руу чиглүүлж өмнөх агуулгыг дарж бичнэ.

> & fileName

Бүх тушаалын сүүлийн тушаал болон стандарт алдаанаас гаралт үүсгэх хоёулаа fileName нэртэй файл руу чиглүүлэх бөгөөд өмнөх агуулгыг дарж бичнэ.

>> fileName

Стандарт гаралтаас гарах гаралтыг fileName нэртэй файл уруу дахин чиглүүлэх бөгөөд үүнийг дарж бичихийн оронд нэмэх хэрэгтэй.

2 >> fileName

Хоолой дахь бүх тушаалын стандарт алдааг fileName нэртэй файл руу чиглүүлэх бөгөөд үүнийг дарж бичихийн оронд нэмэх хэрэгтэй.

>> & fileName

Бүх тушаалын сүүлийн тушаал болон стандарт алдаанаас гаралт үүсгэх аль аль нь файлын нэрээр нэрлэгдэх файлын нэр рүү шилжих болно.

> @ fileId

FileId нь өмнөх дуудлагаас нээх утга гэх мэт нээлттэй файлын тодорхойлогч байх ёстой. Сүүлийн тушаалын стандарт гаралт нь файлд нээгдсэн байх ёстой fileId файл руу чиглэнэ.

2> @ fileId

FileId нь өмнөх дуудлагаас нээх утга гэх мэт нээлттэй файлын тодорхойлогч байх ёстой. Хоолой дахь бүх тушаалын стандарт алдааг fileId файл руу чиглүүлнэ. Файл бичихийн тулд нээгдсэн байх ёстой.

> & @ fileId

FileId нь өмнөх дуудлагаас нээх утга гэх мэт нээлттэй файлын тодорхойлогч байх ёстой. Бүх тушаалаас гарсан сүүлийн тушаал болон стандарт алдааны стандарт гаралт нь fileId файл руу чиглэсэн байна. Файл бичихийн тулд нээгдсэн байх ёстой.

Хэрэв стандарт гаралт нь дахин чиглүүлэгдээгүй бол exec тушаал нь дамжуулах хоолой дахь сүүлийн тушаалаас стандарт гаралтыг буцаах болно. Хоолойн доторх тушаалууд нь хэвийн бус эсвэл амь насаа алдаж эсвэл түр зогсоосон бол гүйцэтгэгч алдаа буцаах ба алдааны мэдэгдэл нь дамжуулах хоолойн гаралтыг хэвийн бус хугацаагаар тайлбарласан алдааны мэдэгдлүүдэд дагалдана; errorCode хувьсагч нь сүүлийн хэвийн бус дуусгавар болсон тухай нэмэлт мэдээллийг агуулна. Хэрэв тушаалын аль нэг нь өөрийн стандарт алдааны файлд бичдэг бөгөөд стандарт алдаа дахин чиглүүлэгдээгүй бол гүйцэтгэгч алдаа буцаах болно; алдааны мэдэгдэл нь дамжуулах хоолойн стандарт гаралтыг агуулах бөгөөд дараа нь хэвийн бус алдаанууд (хэрэв байгаа бол), стандарт алдааны гаралтыг дагана.

Үр дүн эсвэл алдааны мессежний сүүлчийн тэмдэгт бол newline бол тухайн тэмдэгт нь үр дүн эсвэл алдааны мэдээнээс ихэвчлэн устгагдах болно. Энэ нь бусад Tcl буцах утгуудтай нийцэж байгаа бөгөөд энэ нь ихэвчлэн шинэ мөрүүдээр дуусдаггүй. Хэдий тийм боловч, -хэрэглээгүй шинэчлэгдэж байгаа бол дараачийн шинэ шугамыг үлдээнэ.

Стандарт оролт нь "<" "эсвэл" << "эсвэл« <@> "-аар өөрчлөгдөөгүй бол дамжуулах хоолой дээрх эхний тушаалын стандарт оролтыг хэрэглээний одоогийн стандарт оролтоос авдаг.

Хэрвээ сүүлд аргумент нь `& '' бол уг хоолойг ар талдаа гүйцэтгэнэ. Энэ тохиолдолд гүйцэтгэгч тушаал нь элементүүд нь дамжуулах хоолой дахь бүх дэд процессуудын процессыг тодорхойлох болно. Хоолой дахь сүүлийн тушаалаас гарах стандарт гаралт нь програмын стандарт гарц уруу дахин чиглүүлэгдээгүй байсан бол дамжуулах хоолойн бүх тушаалуудаас гарсан алдааны гаралт нь дахин чиглүүлэгдэхээс бусад тохиолдолд програмын стандарт алдааны файлд очдог.

Тушаалын эхний үг нь тушаалын нэрээр хийгдсэн; tilde-оролдлого үүн дээр хийгддэг бөгөөд үр дүнг хассан тохиолдолд PATH орчны хувьсагч дахь санг тухайн нэрээр гүйцэтгэгдэнэ. Хэрэв нэр нь зүссэнийг агуулж байгаа бол одоогийн лавлахаас гүйцэтгэх боломжтой хүрч ажиллах ёстой. "Glob" өргөтгөл эсвэл бүрхүүл шиг орлуулагддаггүй тушаалуудыг тушаалын аргумент дээр гүйцэтгэдэг.

Зөөврийн асуудал

Windows (бүх хувилбарууд)

" @fileId " тэмдэглэгээг ашиглан уншиж, эсвэл бичиж буй сокет дээр ажиллахгүй. Сокетаас уншихад 16 битийн DOS аппликейшн нь зогсон, 32 битийн програм нэн даруй буцаж ирдэг. Ямар нэгэн төрлийн програм нь сокет дээр бичдэг бол, мэдээллийг консол руу илгээдэг, хэрэв байгаа бол, эсвэл устгагдсан бол.

Tk консолын текстийн виджет нь бодит стандарт IO боломжуудыг олгодоггүй. Tk-ийн дагуу стандарт оролтоос дахин дамжих үед бүх програмууд файлын төгсгөлийг харах болно; Стандарт гаралт эсвэл стандарт алдаанд шилжих мэдээлэл устгагдах болно.

Текстийн командууд руу аргументуудын замыг тусгаарлана. Өргөдлийг гүйцэтгэх үед өргөдөл гаргагчийн замын нэр нь урагш салгагчтай адил урагш эсвэл буцах зүсэлттэй байж болно. Гэсэн хэдий ч, ихэнх Windows програмууд нь зөвхөн замд зөвхөн хязгаарлагч хязгаарлалт болон backslash-уудаар урагш зураастай аргументуудыг хүлээн авдаг гэдгийг санаарай. Өргөтгөсөн слайд бүхий зам нэрийг зааж өгсөн ямар нэгэн аргумент нь урвуу тэмдэгтийг ашиглахын тулд автоматаар хөрвүүлэгдэхгүй. Хэрэв аргумент нь зам тусгаарлах замд урагш зүсэлтийг агуулна гэвэл хөтөлбөрөөс хамааран замын нэр маягаар танигдаж болно.

Үүнээс гадна, 16-битийн DOS буюу Windows 3.X програмыг дуудахдаа бүх замууд нь богино, сигнал, замын форматыг (жишээ нь, "applbakery.default" гэхийн оронд "applba ~ 1.def" ).

Хоёр буюу түүнээс дээш урагш эсвэл хойшлуулсан зүсэлтүүд нь мөрний замд эгнээнд замыг зааж өгдөг. Жишээ нь c: / дэд санг / windows / системийн эх санг хялбархан нэгтгэх нь c: // windows / system (хоёр зүсэлтийг хамтдаа) үүсгэдэг бөгөөд энэ нь цонх гэж нэрлэгдсэн машины холболтын цэгийг (мөн c: / нь үл тоомсорлодог) бөгөөд c: / windows / системтэй ижилгүй байгаа бөгөөд энэ нь одоо байгаа компьютер дээрх санг тайлбарладаг. Файлыг нийлүүлэх командыг ашиглана.

Windows NT

Өргөдлийг гүйцэтгэхийг оролдохдоо эхлээд нэрийг заасан байдлаар хайж хайх хэрэгтэй. Дараа нь, .com , .exe , ба .bat нь тодорхой нэрний төгсгөлд нэмсэн бөгөөд урт нэрийг хайж олох болно. Хэрэв сангийн нэр нь аппликешний нэрээр тодорхойлогдоогүй бол дараах сангууд нь програмыг хайж олоход автоматаар хайлт хийдэг:

Tcl -ийг ажиллуулах директорыг дуудсан байна.
Одоогийн лавлах.
Windows NT 32-бит системийн лавлах.
Windows NT 16-бит системийн лавлах.
Windows NT гэрийн сан.
Замдаа жагсаасан лавлахууд.

Дууг барьсан командыг хуулж , хуулбарлахын тулд дуудагч нь " cmd.exe / c " -ийг хүссэн командад бэлтгэх ёстой.

Windows 95

Өргөдлийг гүйцэтгэхийг оролдохдоо эхлээд нэрийг заасан байдлаар хайж хайх хэрэгтэй. Дараа нь, .com , .exe , ба .bat нь тодорхой нэрний төгсгөлд нэмсэн бөгөөд урт нэрийг хайж олох болно. Хэрэв сангийн нэр нь аппликешний нэрээр тодорхойлогдоогүй бол дараах сангууд нь програмыг хайж олоход автоматаар хайлт хийдэг:

Tcl -ийг ажиллуулах директорыг дуудсан байна.
Одоогийн лавлах.
Windows 95 системийн лавлах.
Windows 95 гэрийн лавлах.
Замдаа жагсаасан лавлахууд.

Бүрхүүлийг барьсан тушаалуудыг ажиллуулахын тулд дуудагч нь " command.com / c " -ыг хүссэн командад бэлдэх ёстой.

16 битийн DOS аппликешн консолоос стандарт оролтыг уншаад дараа нь 16-битийн DOS програмууд нь стандарт оролтыг аль хэдийн хаагдсан гэж үзнэ. 32-битийн програмууд нь энэ асуудалтай тулгардаггүй бөгөөд 16-битийн DOS програм нь стандарт оролт хаалттай гэж үзсэний дараа ч зөв ажиллах болно. Энэ алдаатай холбоотой алдаа засах арга байхгүй.

NUL: төхөөрөмж болон 16 битийн програм хооронд шилжих нь үргэлж ажилладаггүй. NUL- ээс дахин чиглүүлэлт хийх үед, зарим програмууд нь hang, зарим нь "0x01" байт "хязгааргүй урсгалыг авах болно, зарим нь яг файлын төгсгөлийг зөв авах болно; Энэ үйлдэл нь програм руу хөрвүүлэгдсэнээс хамаарна. 4Р- ээс их хүртэл NUL хүртэлх урсгалыг дахин чиглүүлэх үед зарим аппликешн нь зогсоно. Дээрх асуудлууд нь 32 битийн програмууд дээр хийгддэггүй.

Бүх DOS 16-битийн програмууд нь синхроноор ажилладаг. 16-битийн DOS програм руу хоолойн бүх стандарт оролтыг түр файлд цуглуулдаг; 16-bit DOS програм эхлүүлэхээс өмнө хоолойн нөгөө төгсгөлийг хааж байх ёстой. Хоолойд 16-битийн DOS аппликешны бүх стандарт гаралт эсвэл алдааг түр зуурын файлд цуглуулдаг; түр зуурын файлууд дамжуулах хоолойн дараагийн шатанд шилжихээс өмнө програм дуусах ёстой. Энэ нь хоолойн хэрэгжилтэнд Windows 95 -ын алдаа засах арга зам юм. Стандарт Windows 95 DOS бүрхүүл нь хоолойг өөрөө зохицуулдаг.

Зарим аппликэйшнүүд, тухайлбал command.com , интерактиваар гүйцэтгэгдээгүй байх ёстой. Тэдгээрийн стандарт оролтоос уншиж, стандарт гаралт руу бичихийн оронд консолийн цонхонд шууд ханддаг програмууд амжилтгүй болох, Tcl-г өлгөх, эсвэл өөрийн хувийн консол цонх тэдэнд байхгүй бол системийг өлгөж болно.

Macintosh

Exec тушаал нь хэрэгждэггүй бөгөөд Macintosh-ийн доор байдаггүй.

Unix

Exec тушаал нь бүрэн ажиллагаатай бөгөөд тайлбарласны дагуу ажилладаг.

Мөн үзнэ үү

алдаа (n), нээлттэй (n)

Түлхүүр үг

гүйцэтгэх, дамжуулах хоолой, дахин чиглүүлэлт, дэд процесс

Чухал: Тушаалын командыг ашиглана ( % man ) ашиглана.