బాష్ స్ట్రింగ్ నుండి చివరి x అక్షరాలను తొలగించండి

Bash Remove Last X Characters From String



ఎవరైనా కొన్నిసార్లు స్ట్రింగ్ నుండి అక్షరాలను తొలగించాల్సి రావచ్చు. కేసు ఎలా ఉన్నా, లైనక్స్ బాష్‌లో అక్షరాలను తొలగించడానికి అనేక అంతర్నిర్మిత, ఉపయోగకరమైన సాధనాలను కలిగి ఉంటుంది. ఈ పద్ధతిని ఉపయోగించి స్ట్రింగ్ నుండి అక్షరాలను ఎలా తొలగించాలో ఈ వ్యాసం ప్రదర్శిస్తుంది. ఈ పోస్ట్‌లో, సూచనలు ఉబుంటు 20.04 ఫోకల్ ఫోసాపై అమలు చేయబడ్డాయి. పైన పేర్కొన్న యుటిలిటీలను ఇన్‌స్టాల్ చేసిన ఏదైనా లైనక్స్ సిస్టమ్‌లో అదే సూచనలు అమలు చేయబడతాయి. సూచనలను అమలు చేయడానికి, మేము సాధారణ టెర్మినల్‌ని ఉపయోగిస్తాము. Ctrl+Alt+T సత్వరమార్గం టెర్మినల్ సాధనాన్ని తెరుస్తుంది.

పద్ధతి 01: సబ్‌స్ట్రింగ్ వే

స్ట్రింగ్ నుండి అక్షరాలు లేదా అక్షరాలను తొలగించడానికి మా మొదటి పద్ధతి అసలైన దాని నుండి సబ్‌స్ట్రింగ్‌ను సృష్టించడం లాంటిది. ఇంతలో, టెర్మినల్ ఇప్పటికే తెరవబడింది; మా బాష్ కోడ్‌ను జోడించడానికి మేము బాష్ ఫైల్‌ను తయారు చేస్తాము. తద్వారా మేము అక్షర తొలగింపు లేదా సబ్‌స్ట్రింగ్ మేకింగ్ చేయవచ్చు. కాబట్టి, బాష్ ఫైల్‌ను రూపొందించడానికి మేము మా షెల్‌లోని అంతర్నిర్మిత టచ్ సూచనలను ఉపయోగించాము.









ఉబుంటు 20.04 యొక్క హోమ్ ఫోల్డర్‌లో ఫైల్ త్వరగా జనరేట్ అయినందున, దాన్ని సవరించడానికి కొంత ఎడిటర్‌లో తెరవండి. కాబట్టి, కింది విధంగా file.sh పత్రాన్ని తెరవడానికి మేము GNU ఎడిటర్‌ని ఎంచుకుంటాము.







దానిలో క్రింద చూపిన కోడ్‌ని కాపీ చేయండి. ఈ కోడ్ ప్రారంభంలో బాష్ పొడిగింపును కలిగి ఉంది, ఆ తర్వాత, మేము స్ట్రింగ్ విలువతో స్ట్రింగ్ వేరియబుల్ వాల్‌ను ప్రకటించాము. ఇతర లైన్‌లో, టెర్మినల్‌లో ఈ వేరియబుల్‌ను ప్రదర్శించడానికి మేము ఎకో పదబంధాన్ని ఉపయోగిస్తాము. అసలు పని ఇక్కడ నుండే మొదలవుతుంది. మేము వేరియబుల్ క్రొత్తదాన్ని ప్రారంభిస్తాము మరియు దానికి అసలు వేరియబుల్ వాల్యూ యొక్క సబ్‌స్ట్రింగ్ అయిన విలువను కేటాయించాము. డబుల్ కోలన్‌ల తర్వాత కలుపుల్లో -14 అని పేర్కొనడం ద్వారా మేము దాన్ని చేసాము. ఇది మొదటి స్ట్రింగ్ ఫస్ట్‌వరల్డ్ కంట్రీస్ నుండి చివరి 14 అక్షరాలను తీసివేయాలని కంపైలర్‌కి చెబుతుంది. మిగిలిన అక్షరాలు కొత్త వేరియబుల్‌లో సేవ్ చేయబడతాయి. చివరి లైన్‌లో, కొత్త వేరియబుల్‌ని కొత్తగా ప్రింట్ చేయడానికి ఎకో ఉపయోగించబడింది.



బాష్ కమాండ్ ఉపయోగించి ఫైల్ file.sh యొక్క సరైన అమలు ఊహించిన విధంగా బయటకు వస్తుంది. ముందుగా, ఇది మొదటి స్ట్రింగ్ వేరియబుల్ వాల్యూ విలువను ప్రదర్శిస్తుంది మరియు ఆ తర్వాత, చూపిన అవుట్‌పుట్ ప్రకారం మొదటి వేరియబుల్ నుండి కొత్తగా సృష్టించిన స్ట్రింగ్ విలువను ప్రదర్శిస్తుంది.

పద్ధతి 02: ప్రత్యేక చిహ్నాలను ఉపయోగించడం

ఏదైనా స్ట్రింగ్ నుండి చివరి అక్షరాలు లేదా అక్షరాలను తీసివేయడానికి మరొక సులభమైన మరియు సులభమైన పద్ధతి ప్రత్యేక చిహ్నాలు లేదా అక్షరాలు, ఉదా. శాతం మరియు ప్రశ్న గుర్తు చిహ్నాల ద్వారా. కాబట్టి, ఈసారి మేము ఏ స్ట్రింగ్ నుండి అక్షరాలను తీసివేయడానికి శాతం మరియు ప్రశ్న గుర్తును ఉపయోగిస్తాము. అందువల్ల, GNU నానో ఎడిటర్‌ని ఉపయోగించి బాష్ స్క్రిప్ట్‌ను అప్‌డేట్ చేయడానికి మేము ఇప్పటికే అదే ఫైల్‌ను తెరిచాము. మొత్తం కోడ్ అదే, కానీ వేరియబుల్ కొత్త భాగం కొద్దిగా భిన్నంగా ఉంటుంది. ఈ శాతం గుర్తు తర్వాత తొలగించాల్సిన వేరియబుల్ వాల్ నుండి అక్షరాల సంఖ్యను సూచిస్తున్న ప్రశ్న మార్కుల సంఖ్యను సిస్టమ్‌కు తెలియజేయడానికి మేము ఒక శాతం గుర్తును ఉపయోగించాము. మేము 9 ప్రశ్న గుర్తులను జోడించామని మీరు చూడవచ్చు. దీని అర్థం స్ట్రింగ్ ఫస్ట్‌వరల్డ్‌కంట్రీస్‌లోని చివరి 9 అక్షరాలు తీసివేయబడతాయి మరియు మిగిలిన స్ట్రింగ్ ఫస్ట్‌వరల్డ్ అవుతుంది. ఈ మిగిలిన స్ట్రింగ్ కొత్త వేరియబుల్‌కి సేవ్ చేయబడుతుంది.

మేము అప్‌డేట్ చేయబడిన బాష్ ఫైల్‌ను అమలు చేసినప్పుడు, ఊహించిన విధంగా అవుట్‌పుట్ వస్తుంది. ఇది మొదటి వేరియబుల్ నుండి అసలైన స్ట్రింగ్ మరియు రెండవ వేరియబుల్ విలువను చూపిస్తుంది, వేరియబుల్ వాల్ నుండి కొత్తగా సృష్టించబడింది.

విధానం 03: సెడ్‌ని ఉపయోగించడం

టెక్స్ట్ సీక్వెన్స్‌లను మార్చడానికి సెడ్ ఒక ఉపయోగకరమైన మరియు ప్రభావవంతమైన సాధనం. ఇది ఇంటరాక్టివ్ కాని డెవలప్‌మెంట్ ఎన్విరాన్మెంట్, ఇది డేటా ఇన్‌పుట్‌తో పని చేయడానికి మరియు సాధారణ టెక్స్ట్ పరివర్తనలను చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. మీకు కావలసిన వచనాల నుండి అక్షరాలను తొలగించడానికి మీరు సెడ్‌ను కూడా ఉపయోగించవచ్చు. మేము ఉదాహరణ స్ట్రింగ్‌ని ఉపయోగిస్తాము మరియు ఇలస్ట్రేషన్ ప్రయోజనాల కోసం దానిని సెడ్ కమాండ్‌లోకి మార్చుతాము. మీరు సెడ్‌తో ఒక రకమైన స్ట్రింగ్ నుండి ఒక నిర్దిష్ట అక్షరాన్ని తొలగించవచ్చు. కాబట్టి, మేము ప్రతిధ్వని ప్రకటనలో స్ట్రింగ్ యొక్క సాధారణ పంక్తిని ఉపయోగించాము. పేర్కొన్న స్ట్రింగ్ నుండి A అక్షరాన్ని తొలగించడానికి మేము సెడ్‌ను ఉపయోగించాము. వాక్యనిర్మాణం ‘s/string_to_be_removed //’ ని అనుసరించేలా చూసుకోండి. అవుట్‌పుట్ A అక్షరాన్ని తీసివేసినట్లు చూపుతుంది.

అక్సా అనే మొత్తం పదాన్ని తొలగించడానికి, తప్పిపోయిన అక్షరాలను సూచించడానికి లోపల ఉన్న చుక్కలతో ఒక పదం యొక్క మొదటి మరియు చివరి అక్షరాన్ని మేము పేర్కొన్నాము. అక్సా అనే పదాన్ని తీసివేయడంతో అవుట్‌పుట్ స్ట్రింగ్‌ను చూపుతుంది.

స్ట్రింగ్ నుండి చివరి అక్షరాల సంఖ్యను తీసివేయడానికి, చూపిన విధంగా డాలర్ గుర్తుకు ముందు మీ అవసరానికి అనుగుణంగా చుక్కల సంఖ్యను పేర్కొనండి.

విధానం 04: Awk ని ఉపయోగించడం

Awk అనేది అధునాతన స్క్రిప్టింగ్ భాష, ఇది నమూనాలను మరియు ప్రాసెస్ టెక్స్ట్‌లను సరిపోల్చడానికి ఉపయోగించబడుతుంది. మీరు వివిధ మార్గాల్లో ఇన్‌పుట్‌ను మార్చడానికి మరియు సవరించడానికి Awk ని ఉపయోగించవచ్చు. మీరు awk ఉపయోగించి స్ట్రింగ్స్ నుండి అక్షరాలను కూడా తొలగించవచ్చు. అవ్క్ సెడ్ నుండి కొద్దిగా భిన్నంగా కనిపిస్తుంది. ఈసారి మేము అక్సా యాసిన్‌తో స్ట్రింగ్‌ను మార్చాము. Awk ఫంక్షన్ సబ్‌స్ట్రింగ్ పద్ధతి ద్వారా సబ్‌స్ట్రింగ్ చేస్తుంది మరియు దానిని టెర్మినల్‌లో ప్రింట్ చేస్తుంది. పేర్కొన్న స్ట్రింగ్ నుండి తొలగించబడిన అక్షరాల సంఖ్యను ప్రదర్శించడానికి ఫంక్షన్ పొడవు ఉపయోగించబడింది. ఇక్కడ, పొడవు ($ 0) -5 అంటే స్ట్రింగ్ యొక్క చివరి 5 అక్షరాలను తీసివేయడం, మరియు మిగిలినవి ముద్రించాల్సిన సబ్‌స్ట్రింగ్‌లో భాగం.

మేము స్ట్రింగ్ అక్సా యాసిన్ నుండి చివరి 9 అక్షరాలను తీసివేయడానికి ప్రయత్నించాము మరియు అవుట్‌పుట్ సబ్‌స్ట్రింగ్‌గా A ని పొందాము.

పద్ధతి 05: కట్ ఉపయోగించి

అటువంటి పదబంధం లేదా పత్రం నుండి వచన భాగాన్ని సంగ్రహించడానికి మరియు దానిని ప్రామాణిక అవుట్‌పుట్‌కు ముద్రించడానికి కట్ అనేది కమాండ్-లైన్ యుటిలిటీగా కనిపిస్తుంది. ఈ ఆపరేషన్ కొన్ని రకాల స్ట్రింగ్ నుండి అక్షరాలను తొలగించడానికి కూడా ఉపయోగించబడుతుంది. మేము ఒక ఉదాహరణ పదబంధాన్ని ఉపయోగిస్తాము మరియు పరీక్ష ప్రయోజనాల కోసం దానిని కట్ ఇన్‌స్ట్రక్షన్‌కు పంపుతాము. కాబట్టి మేము అక్సా యాసిన్ పదబంధాన్ని ఉపయోగించాము మరియు దానిని కట్ ప్రశ్నకు పంపించాము. ఫ్లాగ్ –c తరువాత, పేర్కొన్న స్ట్రింగ్ నుండి అక్షరాలను కత్తిరించడానికి స్ట్రింగ్ కోసం మేము ఇండెక్స్‌ల పరిధిని నిర్వచించాము. ఇది ఇండెక్స్ 1 నుండి ఇండెక్స్ 5 వరకు అక్షరాలను చూపుతుంది. ఇండెక్స్ 5 ఇక్కడ మినహాయించబడింది. అవుట్‌పుట్ మొదటి 4 అక్షరాలను అక్సాగా చూపుతుంది.

ఈసారి మేము కట్ సూచనలను భిన్నంగా ఉపయోగిస్తాము. స్ట్రింగ్‌ను రివర్స్ చేయడానికి మేము rev ఫంక్షన్‌ను ఉపయోగించాము. స్ట్రింగ్ యొక్క రివర్స్ తర్వాత, మేము స్ట్రింగ్ నుండి మొదటి అక్షరాన్ని కట్ చేస్తాము. ఫ్లాగ్ -c2- అంటే మా సబ్‌స్ట్రింగ్ క్యారెక్టర్ 2 తరువాత ఉంటుంది. ఆ తర్వాత, స్ట్రింగ్‌ని రివర్ట్ చేయడానికి రివర్స్ ఫంక్షన్ మళ్లీ ఉపయోగించబడుతుంది. కాబట్టి, ఈసారి చివరి అక్షరాన్ని తీసివేయడంతో మేము అసలు స్ట్రింగ్‌ను తిరిగి పొందాము.

చివరి 7 అక్షరాలను తీసివేయడానికి, రివర్స్ ఫంక్షన్‌ను ఉపయోగిస్తున్నప్పుడు మీరు కట్ -కమాండ్‌లో -c7 -అని పేర్కొనాలి.

ముగింపు:

లైనక్స్‌లో ప్రాథమిక పని చేయడానికి ఒకటి కంటే ఎక్కువ పద్ధతులు ఉన్నాయి. అదేవిధంగా, టెక్స్ట్ నుండి అక్షరాలను తొలగించడం సాధ్యమవుతుంది. ఈ వ్యాసం స్ట్రింగ్ నుండి అవాంఛిత అక్షరాలను, అలాగే కొన్ని సందర్భాలను తొలగించడానికి ఐదు విభిన్న పద్ధతులను ప్రదర్శించింది. మీరు ఏ సాధనాన్ని ఎంచుకున్నా అది పూర్తిగా మీ ఎంపికపై ఆధారపడి ఉంటుంది మరియు మరింత ముఖ్యంగా, మీరు ఏమి సాధించాలనుకుంటున్నారు.