लिनक्स पर, आप असामान्य कार्यात्मकताओं के साथ कई कमांड पा सकते हैं। ऐसा ही एक आदेश seq है, जो निर्दिष्ट तर्कों के आधार पर संख्याओं के अनुक्रम को आउटपुट करता है।
लेकिन आप संभवतः एक कमांड-लाइन उपयोगिता के साथ क्या कर सकते हैं जो आप पर अंकों का एक गुच्छा फेंकता है? आप इस गाइड में जानेंगे।
सीक कमांड क्या है?
जैसा कि ऊपर उल्लेख किया गया है, लिनक्स में seq कमांड जल्दी से संख्यात्मक वर्णों का एक क्रम उत्पन्न करता है। उपयोगकर्ता संख्याओं के विभिन्न संयोजनों को उत्पन्न करने के लिए कमांड को तर्क दे सकते हैं। उदाहरण के लिए, आप केवल seq के लिए एक अतिरिक्त तर्क पारित करके एक बढ़ी हुई सूची प्राप्त कर सकते हैं।
हालांकि कमांड का व्यावहारिक उपयोग क्या है? जबकि seq पूरी तरह से एक शक्तिशाली उपकरण की तरह नहीं लग सकता है, आप अन्य लिनक्स उपयोगिताओं के साथ इसे लागू करके कमांड से लाभ उठा सकते हैं। आप seq in. का भी उपयोग कर सकते हैं बैश स्क्रिप्ट अपनी असली शक्ति का अनावरण करने के लिए।
लिनक्स में seq का उपयोग कैसे करें
Seq केवल कुछ तर्क लेता है, जो इसे किसी के लिए भी सीखने में आसान बनाता है।
मूल सिंटैक्स
कमांड का मूल सिंटैक्स है:
seq विकल्प संख्या
...कहां है विकल्प वे झंडे हैं जिन्हें आप कमांड के विभिन्न तरीकों को लागू करने के लिए निर्दिष्ट कर सकते हैं और नंबर वे तर्क हैं जिन्हें आप संख्यात्मक अनुक्रम उत्पन्न करने के लिए पास करते हैं।
नंबरों की सूची बनाएं
Seq तर्क नीचे दिए गए इनपुट प्रारूप का पालन करते हैं:
सेक लास्ट
सेक फर्स्ट लास्ट
seq पहला वेतन वृद्धि अंतिम
जब आप केवल एक संख्या निर्दिष्ट करते हैं, तो seq इसे सूची के लिए ऊपरी सीमा के रूप में व्याख्या करता है और एक से शुरू होकर निर्दिष्ट संख्या तक एक अनुक्रम उत्पन्न करता है।
सेक 5
उपरोक्त आदेश निम्नलिखित आउटपुट करेगा:
1
2
3
4
5
जब seq इनपुट के रूप में दो नंबर प्राप्त करता है, तो यह उन्हें अनुक्रम के लिए निचली सीमा और ऊपरी सीमा के रूप में व्याख्या करता है। चार से आठ तक की संख्याओं की सूची बनाने के लिए:
सेक 4 8
आउटपुट:
4
5
6
7
8
लेकिन जब आप कमांड को तीन नंबर पास करते हैं, तो यह दूसरे तर्क को इंक्रीमेंट नंबर के रूप में व्याख्यायित करता है। उदाहरण के लिए:
भाग ३ २ १३
उपरोक्त आदेश दो की वृद्धि के साथ तीन से 13 तक शुरू होने वाली संख्याओं की एक सूची आउटपुट करेगा।
3
5
7
9
11
13
संख्याओं के बीच विभाजक जोड़ें
डिफ़ॉल्ट रूप से, seq सूची के लिए विभाजक के रूप में एक न्यूलाइन वर्ण का उपयोग करता है। यही कारण है कि सूची में प्रत्येक संख्या एक अलग रेखा पर है।
आप इस डिफ़ॉल्ट व्यवहार को बदल सकते हैं और कस्टम विभाजक का उपयोग कर सकते हैं -एस झंडा। का उपयोग करने के लिए अवधि (.) विभाजक के रूप में चरित्र:
सेक-एस. 3 7
आउटपुट:
3.4.5.6.7
ध्यान रखें कि कुछ पात्र जैसे टिल्ड (~) उद्धरणों के भीतर संलग्न होना चाहिए। ऐसा इसलिए है क्योंकि टर्मिनल का उपयोग करता है टिल्ड चरित्र को निरूपित करने के लिए /home निर्देशिका, और यदि आप उद्धरण नहीं जोड़ते हैं तो यह आउटपुट में दिखाई देगा।
सेक-एस ~ 3 7
आउटपुट:
3/घर/4/घर/5/घर/6/घर/7
दूसरी ओर, जब आप विभाजक को उद्धरणों से लपेटते हैं:
सेक-एस '~' 3 7
आउटपुट:
3~4~5~6~7
आउटपुट स्वरूप को ट्वीक करें
आप आउटपुट अनुक्रम के लिए प्रारूप का उपयोग करके भी बदल सकते हैं एफ झंडा। डिफ़ॉल्ट रूप से, seq उपयोगकर्ता इनपुट से प्रारूप शैली को निकालता है। उदाहरण के लिए, यदि आप संख्या 0.1 और 0.5 निर्दिष्ट करते हैं, तो डिफ़ॉल्ट आउटपुट में एक फ्लोटिंग-पॉइंट संख्या प्रारूप होगा।
सेक 0.1 0.5
आउटपुट:
0.1
0.2
0.3
0.4
0.5
आप %a, %e, %f, %g, %A, %E, %F, और %G जैसे विभिन्न रूपांतरण विनिर्देशों का उपयोग करके एक कस्टम आउटपुट स्वरूप निर्दिष्ट कर सकते हैं।
आप का उपयोग कर सकते हैं %f निर्दिष्ट करें यदि आप आउटपुट को फ्लोटिंग-पॉइंट नंबर प्रारूप का पालन करना चाहते हैं।
seq-f %f ४ ७
आउटपुट:
4.000000
5.000000
6.000000
7.000000
सटीकता को दो दशमलव बिंदुओं तक संशोधित करने के लिए:
seq -f %0.2f 4 7
आउटपुट:
4.00
5.00
6.00
7.00
आप आउटपुट टेम्प्लेट निर्दिष्ट करके आउटपुट को पूरी तरह से रूपांतरित भी कर सकते हैं। उदाहरण के लिए, से शुरू होने वाले सभी आईपी पतों की सूची प्राप्त करने के लिए 192.168.5.x:
सेक-एफ १९२.१६८.५.% जी १ २३३
आउटपुट:
आउटपुट में पैडिंग जोड़ने के लिए, आप इसका उपयोग कर सकते हैं डब्ल्यू झंडा। डब्ल्यू ध्वज निर्दिष्ट सबसे बड़ी संख्या के अनुसार आउटपुट की चौड़ाई बनाए रखता है।
निरंतर चौड़ाई बनाए रखते हुए 100 की वृद्धि के साथ एक और 1,000 के बीच संख्याओं का अनुक्रम उत्पन्न करने के लिए:
सेक-डब्ल्यू १ १०० १०००
आउटपुट:
0001
0101
0201
0301
0401
0501
0601
0701
0801
0901
seq कमांड लाइन सहायता प्राप्त करें
जबकि seq का उपयोग करना आसान है, कभी-कभी उपयोगकर्ताओं को इसकी आवश्यकता महसूस हो सकती है आदेश के लिए मैनुअल पृष्ठ की जाँच करें. --ह मदद ध्वज seq मैन पेज प्रदर्शित करेगा:
seq --help
आउटपुट:
व्यावहारिक उदाहरण
जैसा कि पहले ही उल्लेख किया गया है, seq मुख्य रूप से अन्य Linux कमांड के साथ प्रयोग किया जाता है, उदाहरण के लिए, touch और expr।
गणितीय संचालन करें
यदि आप किसी विशेष श्रेणी की संख्याओं को शीघ्रता से जोड़ना या घटाना चाहते हैं, तो आप seq के अंदर का उपयोग करके ऐसा आसानी से कर सकते हैं एक्सप्रेस, जो एक लिनक्स कमांड है जो इनपुट को एक एक्सप्रेशन के रूप में मानता है और संबंधित आउटपुट को प्रदर्शित करता है।
एक और 100 के बीच की सभी संख्याओं को जोड़ने के लिए:
expr `(seq -s "+" 1 100)`
seq कमांड निम्नानुसार एक आउटपुट उत्पन्न करता है:
1 + 2 + 3 + 4 + 5 + 6...
Expr इसे एक इनपुट एक्सप्रेशन के रूप में मानता है और समाधान को आउटपुट करता है।
5050
आप अन्य ऑपरेटरों के साथ seq कमांड में विभाजक को आसानी से बदलकर अन्य गणितीय संचालन कर सकते हैं।
जल्दी से कई फाइलें बनाएं
यदि आप लिनक्स पर कई फाइलें बनाना चाहते हैं जिनके नाम समान पैटर्न का पालन करते हैं, तो आप इसका उपयोग करके आसानी से कर सकते हैं स्पर्श आदेश और सेक।
उदाहरण के लिए, नाम के साथ 10 फाइलें बनाने के लिए फ़ाइल-x.txt, कहां है एक्स एक से 10 तक की संख्या है:
स्पर्श $(seq -f "file%g.txt" 1 10)
टच आपके लिए एक फ्लैश में फाइलें बनाएगा।
लिपियों में seq लागू करना
मान लें कि आप लिख रहे हैं नेटवर्क स्कैनर टूल जैसे Nmap बैश में, आप नेटवर्क में सभी खुले बंदरगाहों की एक सूची प्राप्त करना चाहेंगे। लेकिन उसके लिए, आपको प्रत्येक पोर्ट (कुल 65535) को पिंग करना होगा और प्रतिक्रिया का विश्लेषण करना होगा।
कुछ समय बचाने के लिए, आप seq का उपयोग करना चुन सकते हैं और IP पतों और पोर्ट संयोजनों की एक सूची तैयार कर सकते हैं जिनका उपयोग आप अपनी स्क्रिप्ट में कर सकते हैं।
आइए मान लें कि आप आईपी पते वाले डिवाइस के सभी बंदरगाहों की सूची प्राप्त करना चाहते हैं 1.2.3.4. वांछित आउटपुट उत्पन्न करने के लिए यहां एक त्वरित आदेश दिया गया है:
seq -f १.२.३.४:%g १ ६५५३५
आउटपुट:
फिर आप इस आउटपुट को एक सूची के रूप में उपयोग कर सकते हैं और इसके माध्यम से पार कर सकते हैं, अपनी स्क्रिप्ट का उपयोग करके प्रत्येक पोर्ट की जांच कर सकते हैं और विश्लेषण कर सकते हैं कि यह खुला है या नहीं।
कितनी तेजी से seq संख्याएँ उत्पन्न करता है?
आप सोच रहे होंगे कि यदि आप बैश में लूप का उपयोग करके समान परिणाम प्राप्त कर सकते हैं, तो कार्य के लिए seq क्यों चुनें? ऐसा इसलिए है क्योंकि seq की वास्तविक शक्ति इसकी गति में निहित है। Seq किसी भी अन्य कमांड की तुलना में तेज़ है जो Linux पर संख्याओं का एक क्रम उत्पन्न करता है।
आप लिनक्स पर टाइम यूटिलिटी का उपयोग करके इसकी गति का परीक्षण भी कर सकते हैं। आइए देखें कि seq को एक से शुरू होने वाली दस लाख संख्याओं की सूची बनाने में कितना समय लगता है।
समय क्रम 1000000
नीचे दिए गए आउटपुट को देखते हुए, आप देख सकते हैं कि दस लाख संख्याओं की सूची बनाने में केवल seq लगभग चार सेकंड का समय लगा।
लिनक्स कमांड लाइन की शक्ति
लिनक्स में Seq एकमात्र उपकरण नहीं है जो त्वरित और सटीक परिणाम देने पर बहुत अधिक ध्यान केंद्रित करता है। जबकि आप का उपयोग करके संख्याओं की एक सूची तैयार कर सकते हैं बैश में लूप के लिए, यह एक अनुशंसित अभ्यास नहीं है, यह देखते हुए कि तेज seq वास्तव में कितना तेज है।
लिनक्स कमांड लाइन आपको ऑपरेटिंग सिस्टम और इसकी कार्यक्षमता पर अधिक नियंत्रण प्रदान करती है, यही एक कारण है कि आपको आज जीयूआई पर टर्मिनल का उपयोग शुरू करना चाहिए।
जब प्रदर्शन, नियंत्रण और उपयोग में आसानी की बात आती है तो लिनक्स कमांड लाइन का उच्च आधार होता है।
आगे पढ़िए
- लिनक्स

दीपेश MUO में Linux के लिए जूनियर एडिटर हैं। वह 3 वर्षों से अधिक समय से इंटरनेट पर सूचनात्मक सामग्री लिख रहा है। अपने खाली समय में, उन्हें लिखना, संगीत सुनना और गिटार बजाना पसंद है।
हमारे न्यूज़लेटर की सदस्यता
तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!
एक और क़दम…!
कृपया अपने ईमेल पते की पुष्टि उस ईमेल में करें जो हमने अभी आपको भेजी है।