एक सूची का उपयोग करने के सुदीप के विचार के आधार पर, awk का उपयोग करते हुए एक और दृष्टिकोण :
awk 'BEGIN { a[15] a[25] }; NR % 50 in a'
a
जिन लाइनों को आप प्रिंट करना चाहते हैं, उनके आधार पर सरणी में कुंजी सेट करें । उन पंक्तियों को प्रिंट करें जहां NR % 50
सरणी में किसी एक कुंजी से मेल खाती है।
प्रदर्शन के कुछ संकेत देने के लिए, मैंने इस दृष्टिकोण को समय दिया और अन्य उत्तरों की तुलना में, user
3 रनों के लिए औसत समय लिया।
0.276s
$ time awk 'BEGIN { a[15] a[25] }; NR % 50 in a' <(seq 1000000) > /dev/null
0.374s
$ time awk 'NR % 50 == 15 || NR % 50 == 25' <(seq 1000000) > /dev/null
0.384s
$ time perl -ne 'print if $.%50==15 || $.%50==25' <(seq 1000000) > /dev/null
0.542s
$ time perl -ne 'print if grep {$_==$.%50} (15,25)' <(seq 1000000) > /dev/null