Node.js అనేది ఒక ప్రసిద్ధ ఓపెన్-సోర్స్ ఉచిత జావాస్క్రిప్ట్ రన్టైమ్ ఎన్విరాన్మెంట్, ఇది జావాస్క్రిప్ట్ కోడ్ను ఫైల్ నుండి లేదా నేరుగా కమాండ్ లైన్ నుండి అమలు చేయడానికి వినియోగదారులను అనుమతిస్తుంది. ఫైల్ నుండి JavaScript కోడ్ని అమలు చేయడానికి బాహ్య “ అవసరం. js ” ఫైల్ కమాండ్ కమాండ్ లైన్ జావాస్క్రిప్ట్ కోడ్ను నేరుగా లైన్ వారీగా అమలు చేస్తున్నప్పుడు.
కొన్నిసార్లు, '' ద్వారా కమాండ్ లైన్ నుండి Node.js అప్లికేషన్ను ప్రారంభించేటప్పుడు వినియోగదారు సమాచారాన్ని కాన్ఫిగర్ చేయాలి. నోడ్<ఫైల్ పేరు> ”. అటువంటి పరిస్థితిలో, వినియోగదారు ఆ సమాచారాన్ని ''లో వ్రాయడానికి బదులుగా ఎగ్జిక్యూషన్ కమాండ్తో నేరుగా ఇన్పుట్గా పంపాలి. js ” ఫైల్.
Node.jsలో కమాండ్ లైన్ నుండి ఇన్పుట్ని ఆమోదించడానికి సాధ్యమయ్యే అన్ని పద్ధతులను ఈ వ్రాతపూర్వకంగా చర్చిస్తుంది.
Node.jsలో కమాండ్ లైన్ నుండి ఇన్పుట్ని ఎలా ఆమోదించాలి?
కమాండ్ లైన్ నుండి ఇన్పుట్ని ఆమోదించడానికి Node.js కింది మాడ్యూళ్లను అందిస్తుంది:
- 'రీడ్లైన్' మాడ్యూల్ని ఉపయోగించడం
- 'రీడ్లైన్-సింక్' మాడ్యూల్ని ఉపయోగించడం
- 'ప్రాంప్ట్' మాడ్యూల్ ఉపయోగించడం
- 'ఎంక్వైరర్' మాడ్యూల్ ఉపయోగించడం
'తో ప్రారంభిద్దాం రీడ్లైన్ ” మాడ్యూల్.
ముందస్తు అవసరాలు : ఏదైనా పద్ధతి యొక్క ఆచరణాత్మక అమలుకు వెళ్లే ముందు, ముందుగా “ని సృష్టించండి. js ” ఏదైనా పేరు యొక్క ఫైల్ మరియు దానికి మొత్తం సోర్స్ కోడ్ రాయండి. ఇక్కడ, మేము సృష్టించాము ' సూచిక .js” ఫైల్.
విధానం 1: “రీడ్లైన్” మాడ్యూల్ ఉపయోగించి కమాండ్ లైన్ నుండి ఇన్పుట్ని అంగీకరించండి
ది ' రీడ్లైన్ ” మాడ్యూల్ రీడబుల్ స్ట్రీమ్ నుండి వినియోగదారు ఇన్పుట్ను చదవడానికి మరియు దాని ప్రతిస్పందనను ఫలిత అవుట్పుట్గా అందించడానికి ఇంటర్ఫేస్ను సృష్టిస్తుంది. ఇది అంతర్నిర్మిత మాడ్యూల్ కాబట్టి వినియోగదారు దీన్ని '' ఉపయోగించి ఇన్స్టాల్ చేయకుండా నేరుగా Node.js అప్లికేషన్లోకి దిగుమతి చేసుకోవచ్చు. npm ”.
ఈ దృష్టాంతంలో, ఇది కమాండ్ లైన్ నుండి ఇన్పుట్ని తీసుకుని, ఆపై దాన్ని అవుట్పుట్ స్క్రీన్పై ప్రింట్ చేయడానికి ఉపయోగించబడుతుంది. దాని ఆచరణాత్మక అమలు ఇక్కడ ఉంది:
స్థిరంగా రీడ్లైన్ = అవసరం ( 'రీడ్లైన్' )స్థిరంగా rl = రీడ్లైన్. ఇంటర్ఫేస్ సృష్టించండి ( {
ఇన్పుట్ : ప్రక్రియ. stdin ,
అవుట్పుట్ : ప్రక్రియ. stdout
} )
rl. ప్రశ్న ( `ఉత్తమ వేదిక కోసం సాంకేతిక కంటెంట్ ? ` , వెబ్సైట్ => {
rl. ప్రశ్న ( `మీరు ఏ వర్గాన్ని అన్వేషించాలనుకుంటున్నారు ? ` , వర్గం => {
కన్సోల్. లాగ్ ( `వెబ్సైట్ : $ { వెబ్సైట్ } , వర్గం : $ { వర్గం } ` )
rl. దగ్గరగా ( )
} )
} )
పై కోడ్ లైన్ల వివరణ క్రింది విధంగా ఉంది:
- ముందుగా, ' అవసరం ()' పద్ధతిని దిగుమతి చేస్తుంది రీడ్లైన్ ” ప్రస్తుత Node.js ప్రాజెక్ట్లో మాడ్యూల్.
- తరువాత, ' ఇంటర్ఫేస్ సృష్టించండి ()' పద్ధతి 'ని నిర్దేశిస్తుంది ఇన్పుట్' మరియు 'అవుట్పుట్ ” ఒక వస్తువుగా ప్రవహిస్తుంది. ది ' ఇన్పుట్ 'స్ట్రీమ్' ఉపయోగిస్తుంది process.stdin ” యూజర్ నుండి ఇన్పుట్ తీసుకోవడానికి ప్రాపర్టీ.
- ది ' అవుట్పుట్ 'స్ట్రీమ్' ఉపయోగించుకుంటుంది process.stdout ”ఇన్పుట్ స్ట్రీమ్ని చదవడానికి మరియు ఇచ్చిన ఇన్పుట్ స్ట్రీమ్కి స్టాండర్డ్ అవుట్పుట్గా ప్రింట్ చేయడానికి ప్రాపర్టీ.
- ఆ తరువాత, ' rl.ప్రశ్న ()” పద్ధతి వినియోగదారు నుండి ఇన్పుట్ను తీసుకుంటుంది. ఇది ప్రశ్నను మొదటిదిగా మరియు కాల్బ్యాక్ ఫంక్షన్ని దాని రెండవ ఆర్గ్యుమెంట్గా పంపుతుంది. ఇచ్చిన కాల్బ్యాక్ బాణం ఫంక్షన్ వినియోగదారు నమోదు చేసిన విలువలను తిరిగి పొందుతుంది.
- ఇచ్చిన నిర్వచనంలో ' వెబ్సైట్ ', ఇంకా ' వర్గం 'కాల్బ్యాక్ బాణం ఫంక్షన్, ది' console.log ()” పద్ధతి నమోదు చేయబడిన విలువలను ప్రదర్శించడానికి ఉపయోగించబడుతుంది.
- చివరగా, ' rl.close ()” పద్ధతి పైన సృష్టించబడిన ఇంటర్ఫేస్ను మూసివేస్తుంది.
అవుట్పుట్
ప్రారంభించు ' సూచిక అందించిన ఆదేశాన్ని అమలు చేయడం ద్వారా .js” ఫైల్:
నోడ్ సూచిక. jsకింది అవుట్పుట్ కమాండ్ లైన్ నుండి వినియోగదారు ఇన్పుట్ను తీసుకునే రీడ్లైన్ ఇంటర్ఫేస్ను చూపుతుంది మరియు ఆపై నమోదు చేసిన విలువను ప్రామాణిక అవుట్పుట్గా ప్రదర్శిస్తుంది:
విధానం 2: “రీడ్లైన్-సింక్” మాడ్యూల్ ఉపయోగించి కమాండ్ లైన్ నుండి ఇన్పుట్ని అంగీకరించండి
ది ' రీడ్లైన్-సమకాలీకరణ ” అనేది థర్డ్-పార్టీ మాడ్యూల్, ఇది హార్డ్కోడ్ ప్రశ్నలకు సంబంధించిన సమాచారాన్ని సమకాలీకరించి, భవిష్యత్తు కార్యకలాపాల కోసం వాటి సంబంధిత సమాధానాలను నిల్వ చేస్తుంది. ఇది కమాండ్ లైన్ నుండి క్లయింట్ మరియు సర్వర్ మధ్య కమ్యూనికేషన్గా పనిచేస్తుంది.
అసమకాలిక మరియు సింక్రోనస్ మాడ్యూళ్ల మధ్య ప్రధాన వ్యత్యాసం ఏమిటంటే ' అసమకాలిక ” సోర్స్ కోడ్ యొక్క నిర్దేశిత విధిని నిర్వర్తించని వరకు దాని అమలును బ్లాక్ చేస్తుంది, అయితే సింక్రోనస్ మాడ్యూల్స్ కోడ్ లైన్ను వరుస పద్ధతిలో అమలు చేస్తాయి.
'రీడ్లైన్-సింక్' మాడ్యూల్ను ఇన్స్టాల్ చేయండి
ది 'రీడ్లైన్-సమకాలీకరణ' మాడ్యూల్ అంతర్నిర్మిత మాడ్యూల్ కాదు, కాబట్టి దిగువ ఆదేశాన్ని అమలు చేయడం ద్వారా దీన్ని మాన్యువల్గా ఇన్స్టాల్ చేయాలి:
npm ఇన్స్టాల్ రీడ్లైన్ - సమకాలీకరించుప్రస్తుత Node.js ప్రాజెక్ట్కి రీడ్లైన్-సింక్ మాడ్యూల్ జోడించబడిందని అవుట్పుట్ చూపిస్తుంది:
ఇప్పుడు, 'ని ఉపయోగించండి రీడ్లైన్-సమకాలీకరణ ” ఇవ్వబడిన కోడ్ స్నిప్పెట్ని అనుసరించడం ద్వారా ఆచరణాత్మకంగా మాడ్యూల్ చేయండి:
ఉంది రీడ్లైన్ సమకాలీకరణ = అవసరం ( 'రీడ్లైన్-సమకాలీకరణ' ) ;ఉంది empname = రీడ్లైన్ సమకాలీకరణ. ప్రశ్న ( 'ఉద్యోగి పేరు: ' ) ;
ఉంది jd = రీడ్లైన్ సమకాలీకరణ. ప్రశ్న ( 'ఉద్యోగ వివరణ: ' ) ;
ఉంది కంపెనీ = రీడ్లైన్ సమకాలీకరణ. ప్రశ్న ( 'సంస్థ:' , {
} ) ;
కన్సోల్. లాగ్ ( empname + 'గా పనిచేస్తుంది' + jd + 'లో' + కంపెనీ ) ;
పై కోడ్ యొక్క వివరణ క్రింది విధంగా ఉంది:
- మొదట, ' రీడ్లైన్-సమకాలీకరణ 'మాడ్యూల్ ఫైల్ లోపల దిగుమతి చేయబడింది మరియు దాని వస్తువు కొత్త వేరియబుల్లో నిల్వ చేయబడుతుంది' రీడ్లైన్ సమకాలీకరణ ”.
- తరువాత, '' సహాయంతో ప్రశ్న అడగబడుతుంది ప్రశ్న ()” పద్ధతిని వాదనగా పేర్కొనడం ద్వారా.
- తదుపరి ప్రశ్నలను అడగడానికి అదే విధానాన్ని ఉపయోగిస్తారు.
- ఆ తరువాత, ' console.log కోట్ చేసిన స్ట్రింగ్తో పాటు నమోదు చేసిన విలువలను ప్రదర్శించడానికి ()” పద్ధతి ఉపయోగించబడుతుంది.
అవుట్పుట్
అమలు చేయండి' సూచిక .js” ఫైల్:
నోడ్ సూచిక. jsసిన్క్రోనస్ పద్ధతిలో, వినియోగదారుల నుండి ఇన్పుట్ తీసుకోబడి ప్రదర్శించబడిందని అవుట్పుట్ చూపిస్తుంది “ రీడ్లైన్-సమకాలీకరణ ”మాడ్యూల్:
విధానం 3: “ప్రాంప్ట్” మాడ్యూల్ ఉపయోగించి కమాండ్ లైన్ నుండి ఇన్పుట్ని అంగీకరించండి
ది ' ప్రాంప్ట్ ” అనేది అసమకాలిక మాడ్యూల్, ఇది వినియోగదారు ఇన్పుట్ను వేరియబుల్ విలువగా నిల్వ చేయడానికి ప్రాంప్టింగ్ ఫంక్షన్ను సృష్టిస్తుంది మరియు ఫలిత అవుట్పుట్గా దాన్ని తిరిగి పొందుతుంది. ఇది చదవగలిగే మరియు వ్రాయగలిగే స్ట్రీమ్ను స్పష్టంగా కాన్ఫిగర్ చేయవలసిన అవసరం లేదు, అందుకే 'తో పోలిస్తే ఉపయోగించడం చాలా సులభం. రీడ్లైన్ ” మాడ్యూల్.
'ప్రాంప్ట్' మాడ్యూల్ను ఇన్స్టాల్ చేయండి
ది ' ప్రాంప్ట్ ” అనేది మూడవ పక్షం మాడ్యూల్, దీని సహాయంతో సులభంగా ఇన్స్టాల్ చేయవచ్చు npm 'ఈ విధంగా:
npm ఇన్స్టాల్ ప్రాంప్ట్ -- సేవ్పై ఆదేశంలో, “ - సేవ్ 'జెండా' జతచేస్తుంది ప్రాంప్ట్ 'మాడ్యూల్ నుండి' pack.json ” ఫైల్.
దీనిని విశ్లేషించవచ్చు ' ప్రాంప్ట్ ” ప్రస్తుత Node.js ప్రాజెక్ట్కి జోడించబడింది:
ఇప్పుడు, ఇన్స్టాల్ చేయబడిన 'ని ఉపయోగించండి ప్రాంప్ట్ ” మాడ్యూల్ ఆచరణాత్మకంగా కింది కోడ్ స్నిప్పెట్ సహాయంతో:
స్థిరంగా ప్రాంప్ట్ = అవసరం ( 'ప్రాంప్ట్' )ప్రాంప్ట్. ప్రారంభించండి ( )
ప్రాంప్ట్. పొందండి ( [ 'రచయిత పేరు' , 'వర్గం' ] , ( తప్పు , ఫలితం ) => {
ఉంటే ( తప్పు ) {
త్రో తప్పు
} లేకపోతే {
కన్సోల్. లాగ్ ( `$ { ఫలితం. రచయిత పేరు } $లో పని చేస్తుంది { ఫలితం. వర్గం } ` )
}
} )
పైన పేర్కొన్న కోడ్ బ్లాక్లో:
- ది ' అవసరం ()' పద్ధతిని దిగుమతి చేస్తుంది ప్రాంప్ట్ ప్రాజెక్ట్లోకి మాడ్యూల్.
- ది ' ప్రారంభించండి ()” పద్ధతి ప్రాంప్ట్ను ప్రారంభిస్తుంది.
- ది ' పొందండి ()” పద్ధతి కమాండ్ లైన్ ద్వారా వినియోగదారు నుండి ఇన్పుట్ను తీసుకుంటుంది. ఇది ఆస్తి పేర్లు మరియు కాల్బ్యాక్ బాణం ఫంక్షన్ను మొదటి మరియు రెండవ పారామీటర్లుగా పేర్కొంటుంది.
- 'తో కాల్బ్యాక్ ఫంక్షన్ తప్పు 'మరియు' ఫలితం 'పారామితులు ఒక 'ని నిర్వచిస్తుంది ఉంటే-లేకపోతే ' ప్రకటన.
- ఏదైనా రకమైన లోపం సంభవించినట్లయితే అప్పుడు ' ఉంటే 'బ్లాక్ ఆ లోపాన్ని విసిరివేస్తుంది లేకపోతే' లేకపోతే ”బ్లాక్ పేర్కొన్న లక్షణాల విలువలను అవుట్పుట్గా ప్రదర్శిస్తుంది.
అవుట్పుట్
'ని అమలు చేయండి సూచిక .js” ఫైల్:
నోడ్ సూచిక. jsకింది అవుట్పుట్ పేర్కొన్న లక్షణాల ఆధారంగా వినియోగదారు ఇన్పుట్ను తీసుకుంటుంది మరియు ఆపై వాటి విలువలను అవుట్పుట్గా తిరిగి పొందుతుంది:
విధానం 4: “విచారణకర్త” మాడ్యూల్ని ఉపయోగించి కమాండ్ లైన్ నుండి ఇన్పుట్ని అంగీకరించండి
Node.jsలో, ' విచారించేవాడు ” అనేది కమాండ్ లైన్ నుండి ఇన్పుట్ తీసుకోవడానికి సులభమైన మార్గం. ఇది వినియోగదారుల నుండి ఇన్పుట్ తీసుకోవడానికి మరియు ''ని ఉపయోగించి అవుట్పుట్ను అందించడానికి అనేక ఉపయోగకరమైన పద్ధతులతో వస్తుంది. సమాధానం 'వస్తువు మరియు '. అప్పుడు ()” అంతర్నిర్మిత పద్ధతి.
జాబితా, ఎంపికలు, ఇన్పుట్, చెక్బాక్స్లు మరియు మరిన్ని వంటి కమాండ్ లైన్ ద్వారా వినియోగదారు నుండి వివిధ రకాల ప్రశ్నలను అడగడానికి ఇది ఉపయోగపడుతుంది. ప్రశ్న-ఆధారిత పనుల కోసం కమాండ్ లైన్ ఇంటర్ఫేస్ ఇంటర్ఫేస్ ఇంటరాక్టివ్గా చేయడానికి ఇది అనుకూలమైన మార్గాన్ని అందిస్తుంది.
'పై వివరణాత్మక గైడ్ని అనుసరించండి Node.js ఎంక్వైరర్ని ఉపయోగించి కమాండ్ లైన్ నుండి ఇన్పుట్ తీసుకోండి ” ఆచరణాత్మక ప్రదర్శన కోసం.
చిట్కా: నోడ్లోని కమాండ్ లైన్ నుండి ఆర్గ్యుమెంట్లను ఎలా పాస్ చేయాలి?
వినియోగదారు కమాండ్ లైన్ నుండి వాదనలను కూడా పంపవచ్చు. ఈ ప్రయోజనం కోసం, ' process.argv ” ఆస్తిని ఉపయోగించవచ్చు. ది ' argv ” అనేది “ప్రాసెస్” మాడ్యూల్ యొక్క అంతర్నిర్మిత ఆస్తి, ఇది “ని ఉపయోగించి Node.js అప్లికేషన్ను అమలు చేస్తున్నప్పుడు కమాండ్ లైన్ నుండి ఆర్గ్యుమెంట్లను పాస్ చేయడానికి ఉపయోగించబడుతుంది. నోడ్<ఫైల్ పేరు> ” ఆదేశం.
'పై వివరణాత్మక గైడ్ని అనుసరించండి Node.jsలో కమాండ్ లైన్ నుండి ఆర్గ్యుమెంట్లను పాస్ చేయండి ” ఆచరణాత్మక ప్రదర్శన కోసం.
Node.jsలోని కమాండ్ లైన్ నుండి ఇన్పుట్ని అంగీకరించడం గురించి అంతే.
ముగింపు
కమాండ్ లైన్ నుండి ఇన్పుట్ను ఆమోదించడానికి, అసమకాలిక 'ని ఉపయోగించండి రీడ్లైన్ ', లేదా సింక్రోనస్' రీడ్లైన్-సమకాలీకరణ ” మాడ్యూల్. అంతేకాకుండా, దీనిని '' ద్వారా కూడా నిర్వహించవచ్చు ప్రాంప్ట్ ' లేదా ' విచారించేవాడు ” మాడ్యూల్. తప్ప ' redline-సమకాలీకరణ ” మాడ్యూల్, మిగిలిన అన్ని మాడ్యూల్స్ అసమకాలికమైనవి. Node.jsలోని కమాండ్ లైన్ నుండి ఇన్పుట్ని ఆమోదించడానికి సాధ్యమయ్యే అన్ని పద్ధతులను ఈ వ్రాత-అప్ చర్చించింది.