ఇరవై నెలల అభివృద్ధి తర్వాత, చాలా Linux పంపిణీలలో డిఫాల్ట్గా ఉపయోగించే GNU Bash 5.2 కమాండ్ ఇంటర్ప్రెటర్ యొక్క కొత్త వెర్షన్ ప్రచురించబడింది. అదే సమయంలో, కమాండ్ లైన్ ఎడిటింగ్ని నిర్వహించడానికి బాష్లో ఉపయోగించిన రీడ్లైన్ 8.2 లైబ్రరీ యొక్క విడుదల సృష్టించబడింది.
ముఖ్య మెరుగుదలలు:
- కమాండ్ ప్రత్యామ్నాయ నిర్మాణాలను అన్వయించడానికి తిరిగి వ్రాసిన కోడ్ (కమాండ్ ప్రత్యామ్నాయం, మరొక ఆదేశాన్ని అమలు చేయడం నుండి అవుట్పుట్ యొక్క ప్రత్యామ్నాయం, ఉదాహరణకు, “$(కమాండ్)” లేదా `కమాండ్`). కొత్త ఇంప్లిమెంటేషన్ బైసన్ పార్సర్కు పునరావృత కాల్ని ఉపయోగిస్తుంది మరియు మెరుగైన సింటాక్స్ తనిఖీ మరియు భర్తీ చేయబడిన నిర్మాణాలలో లోపాలను ముందస్తుగా గుర్తించడం వంటి లక్షణాలను కలిగి ఉంది.
- శ్రేణి సూచికల యొక్క మెరుగైన పార్సింగ్ మరియు విస్తరణ. మొత్తం శ్రేణిని రీసెట్ చేయడానికి బదులుగా ఇచ్చిన విలువతో కీని రీసెట్ చేయడానికి అంతర్నిర్మిత అన్సెట్ కమాండ్లోని “@” మరియు “*” పారామితులను ఉపయోగించగల సామర్థ్యాన్ని అమలు చేసింది.
- కొత్త సెట్టింగ్ “patsub_replacement” జోడించబడింది, సెట్ చేసినప్పుడు, పేర్కొన్న నమూనాతో సరిపోలే స్ట్రింగ్లోని కొంత భాగాన్ని భర్తీ చేయడానికి భర్తీ చేయబడిన స్ట్రింగ్లోని “&” అక్షరం ఉపయోగించబడుతుంది. అక్షరార్థ “&”ని చొప్పించడానికి మీరు బ్యాక్స్లాష్తో తప్పించుకోవాలి.
- అదనపు ప్రక్రియలు ఫోర్క్ చేయబడని పరిస్థితుల సంఖ్య విస్తరించబడింది, ఉదాహరణకు, "$("ని ఉపయోగిస్తున్నప్పుడు ఫోర్క్ ఉపయోగించబడదు.
- టైమర్లు మరియు గడువు ముగిసిన లెక్కల కోసం కొత్త అంతర్గత ఫ్రేమ్వర్క్ అమలు చేయబడింది.
- బిల్డ్ దశలో శ్రేణుల ప్రత్యామ్నాయ అమలును ప్రారంభించడం సాధ్యమవుతుంది (కాన్ఫిగర్ -ఎనేబుల్-ఆల్ట్-అరే-ఇంప్లిమెంటేషన్), ఇది పెరిగిన మెమరీ వినియోగంతో గరిష్ట యాక్సెస్ వేగాన్ని సాధించడానికి అనుకూలీకరించబడింది.
- స్థానికీకరణలో ఉపయోగించిన $'...' మరియు $"..." ప్రత్యామ్నాయాల వినియోగం విస్తరించబడింది. noexpand_translations సెట్టింగ్ జోడించబడింది మరియు స్థానికీకరించదగిన ప్రత్యామ్నాయాలు $"..."కు మద్దతు ప్రారంభించబడిందో లేదో నియంత్రించడానికి “configure --enable-translatable-strings” బిల్డ్ ఎంపిక.
- డిఫాల్ట్గా "గ్లోబ్స్కిప్డాట్స్" సెట్టింగ్ జోడించబడింది మరియు ప్రారంభించబడింది, ఇది తిరిగి రావడాన్ని నిలిపివేస్తుంది. మరియు ".." మార్గాలను తెరిచేటప్పుడు.
మూలం: opennet.ru