私の質問はこの質問に似ていますが、いくつかの異なる制約があります。
- 私は大きな
\n
区切りのワードリストを持っています-1行に1ワード。ファイルのサイズは、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 unix.stackexchange.com/a/30178/56820
—
ezdazuzena