Linux కమాండ్ను తెలుసుకోండి - execl

పేరు: execl, execlp, execle, execv, execvp - ఒక ఫైల్ను అమలు చేయండి

సంక్షిప్తముగా

# చేర్చండి

బాహ్య చార్ ** పర్యావరణం;

Int ఎక్సిక్ (కాన్ చార్ * మార్థ్ , కాన్స్టాన్ చార్ * ఆర్గ్ , ...);
Int ఎక్సెప్ప్ (కాన్ చార్ * ఫైల్ , కాన్ చార్ * ఆర్గ్ , ...);
Int ఎక్సిక్యూ (కాన్ చార్ * పథం , కాన్ చార్ * ఆర్గ్ , ..., చార్ * కాన్ఫ్ ఎన్ ఎస్ పి );
int execv (కాన్ చార్ * పథం , చార్ * కాన్ఫ్లేట్ argv []);
int execvp (చార్ చార్ * ఫైల్ , చార్ * కాన్ఫ్లేట్ argv []);

వివరణ

కార్యక్రమాల కార్యనిర్వాహక కుటుంబం ప్రస్తుత ప్రక్రియ చిత్రాన్ని కొత్త ప్రక్రియ చిత్రంతో భర్తీ చేస్తుంది. ఈ మాన్యువల్ పేజీలో వివరించిన విధులు ఫంక్షన్ అమలు కోసం (2) ముందటి -ముగుస్తుంది. ఈ ఫంక్షన్ల కోసం ప్రారంభ వాదన అమలు చేయవలసిన ఫైల్ యొక్క పాత్ పేరు.

Execl , execlp మరియు execl ఫంక్షన్లలో కాన్ చార్ * ARG మరియు తదుపరి ఎలిప్సిస్ arg0 , arg1 , ..., argn . కలిసి అమలు చేయబడిన ప్రోగ్రామ్కు అందుబాటులో ఉన్న వాదన జాబితాను సూచించే శూన్య-రద్దు తీగలకు ఒకటి లేదా అంతకంటే ఎక్కువ గమనికల జాబితాను వారు వర్ణించారు. మొదటి వాదన, కన్వెన్షన్ ద్వారా అమలు చేయబడిన ఫైల్కు సంబంధించిన ఫైల్ పేరుకు సూచించాలి. వాదనలు జాబితా ఒక NULL పాయింటర్ ద్వారా రద్దు చేయాలి .

Execv మరియు execvp ఫంక్షన్లు కొత్త ప్రోగ్రామ్కు అందుబాటులో ఉన్న వాదన జాబితాకు ప్రాతినిధ్యం వహిస్తున్న శూన్య- పూర్తయిన తీగలకు గమనికలను ఒక శ్రేణిని అందిస్తాయి. మొదటి వాదన, కన్వెన్షన్ ద్వారా అమలు చేయబడిన ఫైల్కు సంబంధించిన ఫైల్ పేరుకు సూచించాలి. గమనికలు యొక్క శ్రేణి ఒక NULL పాయింటర్ ద్వారా రద్దు చేయాలి .

ఎక్లేల్ ఫంక్షన్ కూడా NULL పాయింటర్ను అనుసరించడం ద్వారా అమలు చేయబడిన ప్రక్రియ యొక్క వాతావరణాన్ని నిర్దేశిస్తుంది, ఇది పరామితి జాబితాలో వాదనలు జాబితాను లేదా ఒక అదనపు పారామిటర్తో argv శ్రేణికి పాయింటర్ను ముగించింది. ఈ అదనపు పరామితి అనేది శూన్య-పూర్తయిన తీగలకు గమనికలు యొక్క వ్యూహం మరియు ఒక NULL పాయింటర్ చేత రద్దు చేయబడాలి . ఇతర పనులు ప్రస్తుత ప్రక్రియలో బాహ్య వేరియబుల్ వాతావరణం నుండి కొత్త ప్రక్రియ చిత్రం కోసం వాతావరణాన్ని తీసుకుంటాయి.

ఈ విధులు కొన్ని ప్రత్యేక సెమాంటిక్స్ కలిగి ఉన్నాయి.

ఫంక్షన్ execlp మరియు execvp పేర్కొనబడిన ఫైల్ పేరు స్లాష్ (/) అక్షరమును కలిగి ఉండకపోతే, ఒక ఎక్సిక్యూటబుల్ ఫైల్ కోసం శోధించటానికి షెల్ యొక్క చర్యలు నకిలీ అవుతాయి . శోధన మార్గం పాత్ వేరియబుల్ ద్వారా పర్యావరణంలో తెలుపబడిన మార్గం. ఈ వేరియబుల్ పేర్కొనబడకపోతే, డిఫాల్ట్ మార్గం ``: / bin: / usr / bin '' ఉపయోగించబడుతుంది. అదనంగా, కొన్ని లోపాలు ప్రత్యేకంగా చికిత్స చేయబడతాయి.

ఒక ఫైల్ కోసం అనుమతి నిరాకరించినట్లయితే (ప్రయత్నించిన EACCES ఇచ్చిన ప్రయత్నం), ఈ విధులు శోధన మార్గం యొక్క మిగిలిన అన్వేషణను కొనసాగిస్తాయి. ఏ ఇతర ఫైల్ కనుగొనబడకపోతే, వారు EACCES కు సెట్ చేసిన ప్రపంచ వేరియబుల్ తప్పులతో తిరిగి వస్తారు .

ఒక ఫైల్ యొక్క శీర్షిక గుర్తించబడక పోయినట్లయితే (ప్రయత్నించిన EVEEXEC ను అమలు చేసేందుకు ప్రయత్నించినప్పుడు), ఈ విధులు దాని యొక్క మొదటి మార్గంగా ఫైల్ యొక్క మార్గంతో షెల్ను అమలు చేస్తాయి. (ఈ ప్రయత్నం విఫలమైతే, అన్వేషణ పూర్తి చేయబడదు.)

తిరిగి విలువ

కార్యనిర్వాహక చర్యలు ఏవైనా ఉంటే, ఒక లోపం సంభవిస్తుంది. తిరిగి విలువ -1, మరియు ప్రపంచ వేరియబుల్ తప్పు దోషాన్ని సూచించడానికి అమర్చబడుతుంది.