& కమాండ్ లైన్ నుండి బహుళ పత్రాలలో వచనాన్ని భర్తీ చేయండి

Anonim

మీరు కమాండ్ లైన్‌తో సౌకర్యవంతంగా ఉంటే మరియు మీరు బహుళ టెక్స్ట్ డాక్యుమెంట్‌ల సమూహంలో ఒక పదం, పదబంధం, URL లేదా అక్షరాన్ని కనుగొని, భర్తీ చేయాల్సిన పరిస్థితిలో ఎప్పుడైనా ఉంటే, perl ఆ పనిని చక్కగా చేస్తుంది. ఒక సాధారణ కమాండ్ స్ట్రింగ్ చాలా త్వరగా సమూహ బ్యాచ్‌ని కనుగొని టెక్స్ట్‌పై భర్తీ చేస్తుంది, ఒకే పత్రంలో లేదా బహుళ పత్రాల సమూహంలో విస్తరించి ఉంటుంది.

కమాండ్ లైన్‌లోని అనేక విషయాల వలె, నిర్ధారణ ప్రక్రియ లేదు, కాబట్టి మీరు ఆదేశాన్ని ప్రారంభించే ముందు మీ సింటాక్స్ సరిగ్గా సెట్ చేయబడిందని నిర్ధారించుకోవాలి, లేకుంటే మీరు మరొక అన్వేషణ & భర్తీ చేయాల్సి రావచ్చు. మీ అక్షర దోషాన్ని సరిచేయడానికి.

ప్రాథమిక కమాండ్ సింటాక్స్ క్రింది విధంగా ఉంది: perl -pi -w -e 's/THIS/THAT/g;' /path/to/files.txt

ఒక ఒక పద ఉదాహరణ కోసం, మీరు ప్రతి .txt ఫైల్‌లో “ఓగ్రే” యొక్క అన్ని సందర్భాలను “కార్న్‌బ్రెడ్”తో భర్తీ చేయవలసి వస్తే “పత్రాలు” ఫోల్డర్‌లో, మీరు కింది ఆదేశాన్ని ఉపయోగిస్తారు:

perl -pi -w -e 's/ogre/cornbread/g;' ~/పత్రాలు/.txt

ఒక మొత్తం పదబంధాన్ని కనుగొనడం మరియు భర్తీ చేయడం యొక్క ఉదాహరణ కోసం "The Wizard of Oz"తో .txt ఫైల్‌ల సమూహంలో పత్రాల డైరెక్టరీలో నిల్వ చేయబడిన "ఫిల్మ్స్"తో మొదలవుతుంది:

perl -pi -w -e 's/The Chacolate Factory/The Wizard of Oz/g;' ~/పత్రాలు/చిత్రాలు.txt

కనుగొనడం మరియు భర్తీ చేయడం వెంటనే జరుగుతుంది. మీరు క్యాట్ మరియు గ్రెప్‌ని ఉపయోగించి మార్పును రెండుసార్లు తనిఖీ చేయవచ్చు:

"

పిల్లి ~/Documents/Films124.txt |grep Wizard of Oz"

అంగీకరిస్తున్నాము, ఇది చాలా అధునాతనమైనది మరియు అవును, టెక్స్ట్‌వ్రాంగ్లర్ మరియు BBEdit వంటి GUI యాప్‌ల ద్వారా బ్యాచ్ కనుగొనడం మరియు బహుళ పత్రాల ద్వారా భర్తీ చేయడం మరింత యూజర్ ఫ్రెండ్లీ పద్ధతిలో చేయవచ్చు, కానీ కొన్నిసార్లు కమాండ్ లైన్ వేగంగా ఉంటుంది. ఇలాంటి శీఘ్ర పనుల కోసం మరియు సారూప్యమైన ఇతర వాటి కోసం, అలాగే దీన్ని ఉపయోగించడానికి అదనపు డౌన్‌లోడ్‌లు ఏవీ అవసరం లేదు.

అద్భుతమైన ట్రిక్ కోసం లైఫ్‌హ్యాకర్‌కి పెద్ద శుభాకాంక్షలు.

అప్‌డేట్: 'sed' కమాండ్ అనేది కమాండ్ లైన్ ద్వారా త్వరితగతిన కనుగొని భర్తీ చేయడానికి మరొక మార్గం. సెడ్‌ను కవర్ చేయడం అనేది మరొక కథనానికి సంబంధించిన అంశం, అయితే ఈ టాస్క్ కోసం సెడ్‌ని ఉపయోగించడం యొక్క ప్రాథమిక వాక్యనిర్మాణం కొంచెం సరళమైనది మరియు గుర్తుంచుకోవడం సులభం:

sed -i 's/THIS/THAT/g' /path/to/files.txt

సరియైన లేదా తప్పు మార్గం లేదు, కాబట్టి మీరు పెర్ల్ లేదా సెడ్‌ని ఉపయోగించాలా అనేది వ్యక్తిగత ప్రాధాన్యతకు సంబంధించిన అంశం.

& కమాండ్ లైన్ నుండి బహుళ పత్రాలలో వచనాన్ని భర్తీ చేయండి