मेरा प्रश्न इस प्रश्न के समान है लेकिन विभिन्न बाधाओं के एक जोड़े के साथ:
- मेरे पास एक बड़ा
\n
सीमांकित शब्द सूची है - प्रति पंक्ति एक शब्द। फ़ाइलों का आकार 2GB से लेकर 10GB तक बड़ा है। - मुझे किसी भी डुप्लिकेट लाइनों को हटाने की आवश्यकता है।
- प्रक्रिया डुप्लिकेट को हटाने के दौरान सूची को सॉर्ट कर सकती है लेकिन आवश्यक नहीं है।
- नए अनूठे वर्डलिस्ट को आउटपुट करने के लिए विभाजन पर पर्याप्त जगह है।
मैंने इन दोनों तरीकों की कोशिश की है, लेकिन वे दोनों मेमोरी त्रुटियों से विफल हो जाते हैं।
sort -u wordlist.lst > wordlist_unique.lst
awk '!seen[$0]++' wordlist.lst > wordlist_unique.lst
awk: (FILENAME=wordlist.lst FNR=43601815) fatal: assoc_lookup: bucket-ahname_str: can't allocate 10 bytes of memory (Cannot allocate memory)
मैं किन अन्य तरीकों की कोशिश कर सकता हूं?
Awk unst.stackexchange.com/a/30178/56820
—
ezdazuzena