Vimలో లైన్లను క్రమబద్ధీకరించడానికి గైడ్

Vimlo Lainlanu Kramabad Dhikarincadaniki Gaid



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

ఉదాహరణకు, మీరు మొత్తం పత్రాన్ని క్రమబద్ధీకరించాలనుకుంటే, ఉపయోగించండి : విధమైన NORMAL మోడ్‌లో ఆదేశం. మరోవైపు, మీరు నిర్దిష్ట పంక్తులను మాత్రమే క్రమబద్ధీకరించాలనుకుంటే, ఉపయోగించండి :x,y విధమైన ఆదేశం, ఎక్కడ x మరియు మరియు పంక్తి సంఖ్య నుండి పరిధిని నిర్వచించండి x కు మరియు .







పత్రాలను సవరించేటప్పుడు అవసరమైన కీలకమైన కార్యాచరణలలో సార్టింగ్ ఒకటి. క్రమబద్ధీకరించడం వంటి ప్రత్యేక లక్షణాలను అందించే విషయంలో Vim ఏ అధునాతన ఎడిటర్ కంటే తక్కువ కాదు. అందువల్ల, ఈ గైడ్‌లో, నేను Vim యొక్క అంతర్నిర్మితాన్ని వివరిస్తాను క్రమబద్ధీకరించు కమాండ్, మరియు పంక్తులను క్రమబద్ధీకరించడానికి వివిధ మార్గాల్లో ఎలా ఉపయోగించాలి.



గమనిక: ఈ గైడ్‌లో పేర్కొన్న సూచనలు మరియు ఆదేశాలు Linux (Ubuntu 22.04)లో నిర్వహించబడతాయి. Vim అనేది క్రాస్-ప్లాట్‌ఫారమ్ టెక్స్ట్ ఎడిటర్, మరియు ఈ ఆదేశాలు macOS మరియు Windowsలో కూడా ఎలాంటి లోపం లేకుండా పని చేస్తాయి.



అన్ని పంక్తులను క్రమబద్ధీకరించండి





పత్రంలోని అన్ని పంక్తులను క్రమబద్ధీకరించడానికి, అమలు చేయండి క్రమబద్ధీకరించు NORMAL మోడ్‌లో ఆదేశం.

: విధమైన



డిఫాల్ట్‌గా, ది క్రమబద్ధీకరించు కమాండ్ లెక్సికోగ్రాఫిక్ క్రమంలో పంక్తులను క్రమబద్ధీకరిస్తుంది.

మీ ఫైల్‌కు ఖాళీ పంక్తులు ఉంటే, క్రమబద్ధీకరణ ఆదేశం ఖాళీ పంక్తులను ఎగువ వాస్తవ వచన క్రమబద్ధీకరణలో ఉంచుతుందని గమనించండి.

ఎంచుకున్న పంక్తులను క్రమబద్ధీకరించండి

ఎంచుకున్న పంక్తులను క్రమబద్ధీకరించడానికి, ముందుగా, మేము వాటిని ఎంపిక మోడ్‌లో ఎంచుకోవాలి. మరియు ఎంపిక మోడ్‌ను ప్రారంభించడానికి, నొక్కండి లో , మరియు ఉపయోగించి లైన్లను ఎంచుకోండి h , జె , k, మరియు ఎల్ కీలు లేదా డైరెక్షనల్ బటన్లు.

Vim అనే లైన్-నిర్దిష్ట ఎంపిక మోడ్ కూడా ఉంది విజువల్ లైన్ మోడ్. నొక్కండి V (shift+v) ఎనేబుల్ చేయడానికి విజువల్ లైన్ పంక్తులను ఎంచుకోవడానికి మోడ్.

పంక్తులను ఎంచుకున్న తర్వాత, మీరు చూస్తారు ' <, ' > కమాండ్ లైన్‌లో, ఇది ఎంపిక పరిధిని సూచిస్తుంది. ది ' < దృశ్య ఎంపిక యొక్క మొదటి పంక్తిని సూచించింది, అయితే ' > చివరిది సూచిస్తుంది.

ఇప్పుడు, కేవలం టైప్ చేయండి క్రమబద్ధీకరించు కమాండ్ చేసి, కింది GIFలో చూపిన విధంగా ఎంచుకున్న పంక్తులపై క్రమాన్ని వర్తింపజేయడానికి రిటర్న్ కీని నొక్కండి.

రేంజ్డ్ లైన్‌లను క్రమబద్ధీకరించండి

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

ఉదాహరణకు, లైన్ నంబర్ 1 నుండి లైన్ నంబర్ 4 వరకు పంక్తులను క్రమబద్ధీకరించడానికి, ఉపయోగించండి :1,4 విధమైన ఆదేశం.

: 1 , 4 క్రమబద్ధీకరించు

పేర్కొన్న పంక్తులు మాత్రమే క్రమబద్ధీకరించబడినట్లు పై అవుట్‌పుట్‌లో చూడవచ్చు.

రివర్స్‌లో క్రమబద్ధీకరించండి

ముందే చెప్పినట్లుగా, డిఫాల్ట్ ప్రవర్తన క్రమబద్ధీకరించు పంక్తులను లెక్సికోగ్రాఫిక్ క్రమంలో క్రమబద్ధీకరించడం కమాండ్. పంక్తులను నాన్-లెక్సికల్ పద్ధతిలో క్రమబద్ధీకరించడానికి, ఆశ్చర్యార్థక గుర్తును జోడించండి ( ! ) తర్వాత క్రమబద్ధీకరించు ఆదేశం.

: విధమైన !

లొకేల్ ద్వారా క్రమబద్ధీకరించండి

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

ప్రస్తుత కోలేషన్ లొకేల్‌ని తనిఖీ చేయడానికి, దీన్ని ఉపయోగించండి :భాష ఆదేశం.

:భాష

ప్రస్తుత లొకేల్‌తో క్రమబద్ధీకరించడానికి:

: అదృష్టం ఎల్

గమనిక: MacOS ఆధారిత సిస్టమ్‌లలో ఈ ఎంపిక సరిగ్గా పని చేయకపోవచ్చు.

సంఖ్య ఆధారంగా క్రమబద్ధీకరించండి

లైన్‌లోని మొదటి దశాంశ సంఖ్య ఆధారంగా పంక్తులను క్రమబద్ధీకరించడానికి, ఉపయోగించండి n తో జెండా క్రమబద్ధీకరించు ఆదేశం. సార్టింగ్ డిఫాల్ట్‌గా ఆరోహణ క్రమంలో కొనసాగుతుంది.

: విధమైన n

అవరోహణ క్రమంలో క్రమబద్ధీకరించడానికి, ఉపయోగించండి ! ఆదేశం తర్వాత గుర్తు.

: విధమైన ! n

మధ్య తేడా క్రమబద్ధీకరించు మరియు విధమైన n సార్ట్ కమాండ్ పంక్తులను లెక్సికల్‌గా క్రమబద్ధీకరిస్తుంది, వాటిలోని సంఖ్యలను విస్మరిస్తుంది. మీరు సంఖ్యలకు సంబంధించి క్రమబద్ధీకరించాలనుకుంటే, జోడించండి n క్రమబద్ధీకరణ ఆదేశంతో ఫ్లాగ్ చేయండి.

ఉదాహరణకు, కింది ఫైల్‌లోని పంక్తులు అక్షరాలు మరియు సంఖ్యలను కూడా కలిగి ఉంటాయి. మేము దానిని వర్తింపజేయడం ద్వారా క్రమబద్ధీకరించినప్పుడు క్రమబద్ధీకరించు కమాండ్ మాత్రమే, ఈ పంక్తులు అక్షర క్రమంలో క్రమబద్ధీకరించబడతాయి. మరోవైపు, దరఖాస్తు విధమైన n కింది చిత్రంలో చూపిన విధంగా పంక్తులను సంఖ్య ద్వారా క్రమబద్ధీకరించండి.

సంఖ్యా క్రమబద్ధీకరణ కోసం కొన్ని ఇతర ఎంపికలు క్రింది పట్టికలో పేర్కొనబడ్డాయి.

f ఫ్లోట్ నంబర్ సార్టింగ్
బి బైనరీ సంఖ్య క్రమబద్ధీకరణ
అష్ట సంఖ్య క్రమబద్ధీకరణ
h హెక్సాడెసిమల్ సంఖ్య క్రమబద్ధీకరణ

మార్క్స్ ద్వారా క్రమబద్ధీకరించండి

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

మీరు రెండు మార్కులు పెట్టుకున్నారని అనుకుందాం a మరియు బి .

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

: 'a,' బి క్రమబద్ధీకరించు

ఒకే కోట్ ( ' ) మార్కులను యాక్సెస్ చేయడానికి ఉపయోగించబడుతుంది.

రెగ్యులర్ ఎక్స్‌ప్రెషన్ (RegEx) ద్వారా క్రమబద్ధీకరించండి

సాధారణ వ్యక్తీకరణ (RegEx) అనేది ఒక నమూనాను నిర్వచించడం ద్వారా పంక్తులను క్రమబద్ధీకరించడానికి సాధారణ మార్గాలలో ఒకటి. క్రమబద్ధీకరించు ఆదేశం.

ఉదాహరణకు, వర్ణమాలలు మరియు అంకెలు ఉన్న నిలువు వరుసకు సంబంధించి పంక్తులను క్రమబద్ధీకరించడానికి, ఉపయోగించండి //[a-z]*[0-9]+/ తో నమూనా క్రమబద్ధీకరించు ఆదేశం. ది ఆర్ తరువాత జెండా క్రమబద్ధీకరించు పేర్కొన్న నమూనా ఆధారంగా క్రమబద్ధీకరించడానికి కమాండ్‌ను సూచించడానికి కమాండ్ ఉపయోగించబడుతుంది.

: విధమైన ఆర్ / [ a-z ] * [ 0 - 9 ] + /

పై చిత్రంలో మీరు చూడగలిగినట్లుగా, చివరి నిలువు వరుస అక్షరక్రమంలో క్రమబద్ధీకరించబడింది. నిలువు వరుసను సంఖ్యాపరంగా క్రమబద్ధీకరించడానికి, చొప్పించండి n జెండా.

గమనిక: నేను లైన్ 2,5 నుండి పరిధిని నిర్వచించడం ద్వారా మొదటి పంక్తులను దాటవేసాను.

ది ఆర్ ఇచ్చిన నమూనాల ద్వారా ఫైల్‌ను క్రమబద్ధీకరించడానికి ఫ్లాగ్ మిమ్మల్ని అనుమతిస్తుంది. లేకుండా ఆర్ ఫ్లాగ్, క్రమబద్ధీకరణ ఆదేశం నమూనాతో సరిపోలని అన్ని పంక్తులను క్రమబద్ధీకరిస్తుంది.

డూప్లికేట్ లైన్లను తొలగించండి

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

: వెరైటీ యు

నకిలీ పంక్తులను తీసివేయడానికి ఈ పద్ధతిని ఉపయోగించడం వలన అనేక సందర్భాల్లో అవాంఛనీయమైన పంక్తులు కూడా క్రమబద్ధీకరించబడతాయి. సార్టింగ్ అవసరం లేకుండా ఫైల్‌లోని నకిలీ పంక్తులను తొలగించడానికి రీజెక్స్ వంటి ప్రత్యామ్నాయ పద్ధతులను ఉపయోగించండి.

నిలువు వరుస ఆధారంగా పంక్తులను క్రమబద్ధీకరించండి

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

డిఫాల్ట్ సార్ట్ కమాండ్‌తో పోలిస్తే బాహ్య కమాండ్ అమలు చేయడం సులభం. బాహ్య ఆదేశాలు Vim యొక్క డిఫాల్ట్ ఆదేశాలు కాదని గమనించండి. ఆపరేటింగ్ సిస్టమ్ ద్వారా మద్దతిచ్చే ఏదైనా కమాండ్ అని దీని అర్థం.

Vimలో ఇది ఎలా పని చేస్తుందో అర్థం చేసుకుందాం.

Vimలో ఏదైనా బాహ్య ఆదేశాన్ని ఉపయోగించడానికి, ! ఆ ఆదేశానికి ముందు గుర్తు ఉపయోగించబడుతుంది. మేము కామాతో వేరు చేయబడిన ఫైల్ (CSV)ని కలిగి ఉన్నాము మరియు మూడవ నిలువు వరుసకు సంబంధించి ఫైల్‌ను క్రమబద్ధీకరించాలనుకుంటున్నాము. ఆదేశం ఉంటుంది

: %! క్రమబద్ధీకరించు -టి ',' -k3

ది % మొత్తం బఫర్‌ను ఎంపికగా సూచిస్తుంది. ది -టి ఫీల్డ్ సెపరేటర్‌ను నిర్వచించడానికి ఫ్లాగ్ ఉపయోగించబడుతుంది, ఇది కామా, కోలన్ లేదా స్పేస్ కూడా కావచ్చు. ది -కె జెండా అనేది లైన్‌లోని స్థానాన్ని సూచించే కీ, మరియు k2 పేర్కొన్న డీలిమిటర్ తర్వాత రెండవ ఫీల్డ్ అని అర్థం.

ఉదాహరణలో, నేను బదులుగా పరిధిని పేర్కొన్నాను % మొదటి పంక్తిని దాటవేయడానికి.

: 2 , 5 ! క్రమబద్ధీకరించు -టి ',' -k3

బాహ్య క్రమబద్ధీకరించు కమాండ్ అనేక ఇతర మార్గాల్లో కూడా ఉపయోగపడుతుంది ఎందుకంటే ఇది షఫ్లింగ్, యాదృచ్ఛిక సార్టింగ్ మరియు విలీనం వంటి వివిధ సార్టింగ్ ఎంపికలను అందిస్తుంది. Linux sort కమాండ్ గురించి మరింత తెలుసుకోవడానికి, ఉపయోగించండి మనిషి సహాయం ఆదేశం.

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

: విధమైన / \v^ ( . { - } , ) { 2 } /

పై ఆదేశంలో:

  • \in నిలువు ట్యాబ్‌ను సూచిస్తుంది
  • ^ లైన్ ప్రారంభాన్ని సూచిస్తుంది
  • (.{-},) ఇది ఒక సమూహం .{-} యొక్క నాన్-గ్రీడీ వెర్షన్ .* మరియు , అనేది వేరు క్షేత్రం
  • {2} దాటవేయడానికి మొదటి 2 నిలువు వరుసలను సూచిస్తోంది

అని చూడవచ్చు ఆర్ నమూనాతో ఫ్లాగ్ ఉపయోగించబడదు, అంటే నమూనా ఏదైనా సరిపోలిన నిలువు వరుసను దాటవేస్తుంది మరియు నమూనా తర్వాత నిలువు వరుసలను క్రమబద్ధీకరిస్తుంది. ఈ సందర్భంలో, ఫైల్ మూడవ నిలువు వరుస ఆధారంగా క్రమబద్ధీకరించబడుతుంది. మళ్ళీ క్రింది ఉదాహరణలో, మొదటి పంక్తిని దాటవేయడానికి, నేను 2,5 పరిధిని ఉపయోగించాను.

మధ్య ప్రాథమిక వ్యత్యాసం .* మరియు .{-} అనేది .{-} చిన్నదైన మ్యాచ్ మొదటి అల్గారిథమ్‌ను ప్రాసెస్ చేస్తుంది .* వీలైనంత వరకు మ్యాచ్ అవుతుంది. ఉదాహరణకు, ఒక స్ట్రింగ్ wxyz ది x.*y అయితే మొత్తం స్ట్రింగ్‌తో సరిపోలుతుంది x.{-}y xyతో మాత్రమే సరిపోలుతుంది.

పంక్తులు కేస్ అస్పష్టంగా క్రమబద్ధీకరించండి

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

మీరు క్రింది చిత్రంలో చూడగలిగినట్లుగా, రెండింటితో క్రమబద్ధీకరించని మరియు క్రమబద్ధీకరించబడిన పంక్తులు : విధమైన మరియు : క్రమబద్ధీకరించు i ఆదేశాలు.

ముగింపు

Vimలో క్రమబద్ధీకరించడం Vim అంతర్నిర్మిత ఉపయోగించి సులభంగా చేయవచ్చు క్రమబద్ధీకరించు ఆదేశం. డిఫాల్ట్‌గా, పంక్తులు అక్షర క్రమంలో క్రమబద్ధీకరించబడతాయి, అయితే, మీరు రివర్స్‌లో క్రమబద్ధీకరించాలనుకుంటే ! ఆదేశం తర్వాత సంతకం చేయండి. సార్ట్ కమాండ్ సాధారణంగా మొత్తం బఫర్‌ను క్రమబద్ధీకరిస్తుంది; ఒక పరిధిని కామా సెపరేటర్‌తో కూడా నిర్వచించవచ్చు. ది n జెండా సంఖ్యా క్రమబద్ధీకరణకు, నకిలీ పంక్తులను తీసివేయడానికి ఉపయోగించబడుతుంది లో జెండా ఉపయోగించబడుతుంది. అంతేకాకుండా, సార్టింగ్ ప్రక్రియను మెరుగుపరచడానికి, బాహ్య క్రమబద్ధీకరించు కమాండ్‌ను Vimలో కూడా ఉపయోగించవచ్చు.

Vimలో క్రమబద్ధీకరించడం గురించి మరింత తెలుసుకోవడానికి, దీన్ని అమలు చేయండి : విధమైన సహాయం ఆదేశం.