मैं फ़ाइलहेडल से डुप्लिकेट लाइनों को मुद्रित करने की कोशिश कर रहा हूं, उन्हें हटा नहीं सकता हूं या अन्य प्रश्नों पर मैंने जो कुछ भी देखा है उसे हटा नहीं रहा हूं। मेरे पास पेर्ल के साथ पर्याप्त अनुभव नहीं है ताकि इसे जल्दी से करने में सक्षम हो, इसलिए मैं यहां पूछ रहा हूं। ऐसा करने का तरीका क्या है?पर्ल - फ़ाइल या सरणी में डुप्लिकेट लाइनें पाएं
my %seen;
while (<>) {
print if $seen{$_}++;
}
"एक लाइनर" के रूप में::
perl -ne 'print if $seen{$_}++'
अधिक डेटा
एक बहुत इनपुट के आकार पर निर्भर करता है, लाइनों के आकार और डुप्लिकेट की संभावित संख्या। यदि स्मृति आवश्यकताएं कम हैं, तो '% डुप्लीकेट्स हैश वाले समाधान पर्याप्त हैं। –
वे हैं। मैं बस कुछ जांचने के लिए फ़ाइलहेडल का उपयोग कर रहा हूं। ऐसा लगता है कि कोई डुप्लिकेट नहीं है, तो यह अच्छा है। – Chris