Baro Command Linux - execv

execl, execlp, execv, execvp, execvp - fulin faylka

Muujinta

#these

dib-u-dhiska

Execl (ku xir jidka * khadka, isku xir khariid * arg , ...);
execlp (ku dhaji faylka khadka * , tixgelin shax * arg , ...);
oogista (raaci jidka * khadka, isku xir khad * arg , ..., char * const envp []);
execv (isku xir khad * khadka , char * const argv []);
execvp (const char * faylka , char * const argv []);

Sharaxaadda Farsamooyinka Ciladda

Qoyska fulinta shaqooyinka ayaa beddelaya sawirka hawsha imika ee leh qaab cusub oo qaabsocod ah. Hawlaha lagu sharraxay bogga buuggan waa kuwo horay u socda oo loogu talagalay fulinta hawsha (2). (Fiiri bogga buug-gacmeedka si aad u hesho faahfaahin faahfaahsan oo ku saabsan bedelida hannaanka hadda socda.)

Doodda ugu horreysa ee shaqooyinkan waa magaca waddo feyl ah oo la fulinayo.

Xeeldheeraha iyo argagixisada xiga ee fulinta , fulinta , iyo fulinta shaqooyinka waxaa loo maleyn karaa inay yihiin arg0 , arg1 , ..., argn . Si wadajir ah ayay u qeexayaan liiska mid ama wax badan oo tilmaamaya calaamadaha la joojiyay ee ka soo horjeeda liiska doodaha ee la heli karo barnaamijka la fuliyay. Kulanka ugu horreeya, ee shirku, waa inuu tilmaamaa magaca faylka ee la xidhiidha faylka la fulinayo. Liiska doodaha waa in la joojiyaa tilmaame NULL .

Hawlgallada fulinta iyo fulinta waxay bixiyaan calaamado muujinaya calaamadaha la joojiyay ee ka soo horjeeda liiska muranka ee la heli karo barnaamijka cusub. Kulanka ugu horreeya, ee shirku, waa inuu tilmaamaa magaca faylka ee la xidhiidha faylka la fulinayo. Tilmaamaha dhibbanayaashu waa in ay joojiyaan astaamaha NULL .

Hawsha fulinta sidoo kale waxay qeexeysaa bay'ada socodka fulinta iyadoo la raacayo tilmaame NULL ah oo joojiya liiska doodaha ku jira liiska xayeysiinta ama tilmaamaha safka argviga oo leh xakameyn dheeraad ah. Tilmaamahan dheeraadka ah waa arrin tilmaamaya calaamadaha la joojiyay oo waa in la joojiyaa tilmaame NULL . Farsamooyinka kale waxay ku qaataan bay'ada qaab-dhismeedka cusub ee ka soo baxa bedelka gudaha dibadda ee nidaamka xaadirka ah.

Qaar ka mid ah shaqooyinkan waxay leeyihiin semantics gaar ah.

Fadhiyada iyo execvp ficilku waxay ku duubi doonaan falalka qolofta iyagoo raadinaya faylka la fulin karo haddii magaca faylka la cayimay uusan ku jirin jilitaan (/) dabeecad. Jidka raadinta waa habka lagu qeexay bay'adda ee isbeddelka PATH . Haddii variable aan la cayimin, waddada qaldan '`: / bin: / usr / bin' 'ayaa loo isticmaalaa. Intaa waxaa dheer, khaladaadka qaarkood ayaa si khaas ah loo daaweynayaa.

Haddii oggalaansho loo diido faylka (isku daygii la isku dayey in la soo celiyo EACCES ), shaqooyinkani waxay sii wadi doonaan baaritaanka inta ka hartay wadada baadha. Haddii aan lahayn fayl kale oo la helo, si kastaba ha ahaatee, waxay ku soo noqon doonaan isbedelka caalamiga ah ee lagu dhigay EACCES .

Haddii cinwaanka feylka aan la aqoonsan (isku daygii la isku dayey in loo soo celiyo ENOEXEC ), hawlahaasi waxay ku dari doonaan qolofka wadada faylka sida dooddeeda koowaad. (Haddii isku-daygani uu ku guuldareysto, baaritaan dheeraad ah lama sameeyo.)

Soo celiya Qiimeeyaha Hawl-fulinta

Haddii mid ka mid ah howlaha exec soo noqnoqonayaan, qalad ayaa dhacay. Qiimaha soo noqoshada waa -1, iyo variable errno caalami ah ayaa lagu qeexi doonaa qaladka.