मैं इस उपयोगी सूत्र में उत्तरों के माध्यम से चला गया , लेकिन मेरी समस्या काफी अलग प्रतीत होती है कि मैं अच्छे उत्तर (कम से कम sed
) के बारे में नहीं सोच सकता ।
मेरे पास एक बड़ी CSV फ़ाइल (200+ GB) पंक्तियों के साथ है जो निम्न प्रकार दिखाई देती हैं:
<alphanumerical_identifier>,<number>
जहां <alphanumerical_identifier>
संपूर्ण फ़ाइल में अद्वितीय है। मैं एक अलग फ़ाइल बनाना चाहूंगा जो एक इंडेक्स द्वारा पहला कॉलम बदले , यानी
<index>,<number>
ताकि हम प्राप्त करें:
1, <number>
2, <number>
3, <number>
awk
मेमोरी में पूरी फ़ाइल लोड किए बिना एक बढ़ती हुई सूचकांक उत्पन्न कर सकता है ?
चूंकि इंडेक्स नीरस रूप से बढ़ता है, इसलिए इंडेक्स को गिराना बेहतर हो सकता है। क्या इसका समाधान अलग होगा ?, अर्थात:
<number>
<number>
<number>
awk -F, '{print ++n, $2}'
काम करेगा। या awk -F, '{print $2}'
दूसरे बदलाव के लिए।
FNR
भी काम करेगा++n