కమాండ్ లైన్తో టెక్స్ట్ ఫైల్కి లైన్ నంబర్లను సులభంగా జోడించండి
బ్రియాన్ ఇలా అడిగాడు: “నేను టెక్స్ట్ ఫైల్కి లైన్ నంబర్లను జోడించాలి. నా ఉద్దేశ్యం టెక్స్ట్ ఎడిటర్లో లైన్ నంబర్లు కాదు, టెక్స్ట్ ఫైల్లోని ప్రతి ఐటెమ్ పక్కన ఒక సంఖ్యను జోడించడం అని నా ఉద్దేశ్యం. ఇది ఆటోమేట్ చేయడం సాధ్యమేనా లేదా నేను 1, 2, 3 టైపింగ్ ఫైల్ను మాన్యువల్గా సవరించాలా?”
అవును, మీరు టెక్స్ట్ ఫైల్లో లైన్ నంబర్లను సులభంగా హార్డ్కోడ్ చేయవచ్చు... దీన్ని ఎలా చేయాలో మేము మీకు చూపుతాము! పూర్తిగా స్పష్టంగా చెప్పాలంటే, ఇది చేయబోయేది ప్రతి కొత్త టెక్స్ట్ యొక్క ఎడమ వైపున ఒక లెక్కింపు పంక్తి సంఖ్యను జోడించడం, ప్రతి పంక్తిని తగిన సంబంధిత సంఖ్యతో ఉపసర్గ చేయడం.ఈ హార్డ్ దీన్ని టెక్స్ట్ ఫైల్లోకి కోడ్ చేస్తుంది, అంటే టెక్స్ట్వ్రాంగ్లర్, VIM లేదా BBEdit వంటి యాప్లో లైన్ నంబర్లను చూపడం కంటే ఇది భిన్నంగా ఉంటుంది.
ప్రారంభించడానికి, టెర్మినల్కు వెళ్లండి మరియు మీరు కమాండ్ లైన్ ప్రాంప్ట్లో కింది వాటిని చేయాలనుకుంటున్నారు:
ఒక టెక్స్ట్ ఫైల్కి లైన్ నంబర్లను జోడించడానికి పిల్లిని ఉపయోగించడం
ఇది చాలా సులభమైన పద్ధతి: cat -n ఫైల్ > ఫైల్_న్యూ
మీరు లైన్ నంబర్లను జోడించాలనుకుంటున్న ఫైల్ పేరుతో “ఫైల్”ని భర్తీ చేయండి మరియు “ఫైల్_పేరు”ని ఎగుమతి చేసిన పేరుకు మార్చండి.
మీరు తదుపరి వివరించిన విధంగా 'nl' ఆదేశాన్ని కూడా ఉపయోగించవచ్చు:
హార్డ్ కోర్ లైన్ నంబర్లను టెక్ట్స్ ఫైల్లోకి nl కమాండ్ ఉపయోగించి
మళ్లీ, మీరు దీనికి లైన్ నంబర్లను జోడిస్తున్న ఫైల్ యొక్క సముచిత పేరుతో “ఫైల్ పేరు” మరియు “ఫైల్నెంబర్డ్” స్థానంలో:
nl -ba -s ': ' ఫైల్ పేరు > ఫైల్ పేరు సంఖ్య
అంతే! మీరు ఏదైనా ఉపాయాన్ని ఉపయోగించవచ్చు. టెక్స్ట్ ఫైల్లోని నంబరింగ్ లైన్లకు సులభమైన పరిష్కారాలను అందించడానికి చాలా మంది పాఠకులు వ్యాఖ్యలలో చిమ్ చేశారు. అవి సరళత క్రమంలో పైన జాబితా చేయబడ్డాయి, కానీ మేము దిగువన 'awk' పరిష్కారాన్ని కూడా అందిస్తాము.
-
మీరు 'awk' అనే కమాండ్ లైన్ సాధనాన్ని కూడా ఉపయోగించవచ్చు, అయితే ఇది పైన పేర్కొన్న పద్ధతుల కంటే కొంచెం క్లిష్టంగా ఉంటుంది, మీకు ఆసక్తి ఉంటే టెర్మినల్ను ప్రారంభించి, మేము దూరంగా వెళ్తాము.
మొదట, బేసి ఈవెంట్లో ఏదైనా తప్పు జరిగితే (సింటాక్స్ లోపం వంటిది) మీ టెక్స్ట్ ఫైల్ని బ్యాకప్ చేయండి ఇప్పుడు మీరు సందేహాస్పదమైన టెక్స్ట్ ఫైల్ని బ్యాకప్ చేసారు కాబట్టి, లైన్ నంబర్లను నేరుగా అందులో వ్రాద్దాం:
"awk &39;{printf(%5d : %s\n, NR, $0)}&39; ఫైల్ పేరు > ఫైల్ పేరు సంఖ్య "
ఫైల్ పేరు అనేది అసలైన ఫైల్, మరియు ఫైల్ నేమ్నెంబర్డ్ అనేది మీరు awk కమాండ్ యొక్క అవుట్పుట్ను దానికి జోడించిన లైన్ నంబర్లతో కాల్ చేయాలనుకుంటున్నది. మీ అవుట్పుట్ టెక్స్ట్ డాక్యుమెంట్ ఇప్పుడు ప్రతి పంక్తి ఐటెమ్కు ముందు కోలన్తో ఒక సంఖ్యను కలిగి ఉంటుంది:
1: పదాలతో లైన్ 2: పదాలతో లైన్ 3: పదాలతో లైన్
మీ ఒరిజినల్ టెక్స్ట్ ఫైల్ మారకుండా ఉండాలి, కానీ మీరు చేసిన బ్యాకప్ ఫైల్ కంటే సింటాక్స్ లోపం ఉంటే మీ రోజు ఆదా అవుతుంది. ఈ కమాండ్ awk మద్దతు ఉన్న ఏదైనా Unix OSలో పని చేస్తుంది, కాబట్టి ఈ కమాండ్ని FreeBSD, Linux, Mac OS X లేదా మీరు ఆలోచించగలిగే ఏదైనా ఇతర వేరియంట్లో అమలు చేయడానికి సంకోచించకండి.