उदाहरण के साथ पावरशेल हैशटेबल अल्टीमेट गाइड

20 मई, 2021 5546 विचारों पावरशेल हैशटेबल उदाहरणों के साथ आपका अंतिम गाइड

पावरशेल हैशटेबल एक संग्रह आइटम और उनके मूल्य हैं। वस्तुओं को कुंजी के रूप में संदर्भित किया जाता है। इसके अलावा, हैशटेबल में प्रत्येक कुंजी का एक समान मूल्य होता है।





संक्षेप में, पावरशेल हैशटेबल एक कुंजी/मूल्य स्टोर 'टेबल' है।



इस S ज़ोन में, मैं आपको वह सब कुछ सिखाऊँगा जो आपको PowerShell हैशटेबल्स के बारे में जानने की आवश्यकता है। पहला खंड हैशटेबल और ऐरे के बीच अंतर की पड़ताल करता है।

फिर, दूसरे खंड में, का उपयोग करते हुए प्राप्त सदस्यीय सीएमडीलेट, मैं आपको हैशटेबल्स के हुड के पीछे ले जाऊंगा।



अंत में, मैं स्क्रिप्टिंग में हैशटेबल्स का उपयोग करने के विभिन्न तरीकों का पता लगाऊंगा।



पोस्ट विषय ब्राउज़ करें

पावरशेल हैशटेबल बनाम पावरशेल ऐरे

पावरशेल हैशटेबल बनाम पावरशेल ऐरे

इससे पहले कि मैं हैशटेबल्स में गोता लगाऊं, मैं हैशटेबल्स और एरेज़ के बीच के अंतर को समझाना चाहता हूं। यह अंतर महत्वपूर्ण है क्योंकि दो अवधारणाएं आसानी से भ्रमित हो सकती हैं।



इस गाइड के परिचय में, मैंने समझाया कि हैशटेबल एक कुंजी/मूल्य स्टोर है। इसके अतिरिक्त, हैशटेबल कुंजियों और मानों वाली तालिका की तरह है।



इसके विपरीत, पावरशेल ऐरे मूल्यों या वस्तुओं का संग्रह है।

पावरशेल हैशटेबल और पावरशेल सरणी के बीच प्राथमिक अंतर यह है कि हैशटेबल वस्तुओं (कुंजी) और उनके मूल्यों का संग्रह है - जबकि एक सरणी केवल वस्तुओं की एक सूची है।

एक त्वरित उदाहरण के लिए, नीचे दिए गए कोड एक हैशटेबल और एक सरणी के उदाहरण हैं - पहला कोड एक हैशटेबल बनाता है जबकि दूसरा कोड एक सरणी बनाता है:

|_+_| |_+_| कोड उदाहरणों से, आप देख सकते हैं कि एक हैशटेबल {} में संलग्न है, एक सरणी () में संलग्न है।

नीचे दिया गया स्क्रीनशॉट दो कोड के परिणाम प्रदर्शित करता है।

पावरशेल हैशटेबल बनाम पावरशेल ऐरे

(1) लेबल वाले स्क्रीनशॉट का हिस्सा हैशटेबल का परिणाम है। क्या आपने कुंजी/मूल्य जोड़ी देखी है?

उपरोक्त उदाहरण में, कुंजी, रूट का मान C:UsersvictoDocuments है। साथ ही, PSProvider कुंजी का एक मान होता है जिसे FileSystem कहा जाता है।

अंत में, नाम का दस्तावेज़ का मूल्य है।

इसके अलावा, (2) लेबल वाले स्क्रीनशॉट के भाग में सरणी कोड का परिणाम होता है। जैसा कि पहले बताया गया है, यह सिर्फ एक सूची है।

पावरशेल हैशटेबल तरीके और गुण

पावरशेल हैशटेबल तरीके और गुण

परिचय में मैंने आपको पावरशेल हैशटेबल्स के हुड के पीछे ले जाने का वादा किया था। यह बात है!

इस खंड में, मैं आपको सिखाऊंगा कि हैशटेबल के पीछे देखने के लिए गेट-सदस्य सीएमडीलेट का उपयोग कैसे करें।

जब आप पावरशेल हैशटेबल के परिणाम को पाइप करते हैं प्राप्त सदस्यीय , आप उपलब्ध की समीक्षा करने में सक्षम होंगे तरीकों तथा गुण हैशटेबल के।

आइए ऊपर दिए गए हमारे पहले जल्दबाजी के उदाहरण पर वापस जाएं:

|_+_|

कोड को एक नए PowerShell ISE दस्तावेज़ में कॉपी करें। फिर, कोड चलाएँ।

फिर, उपलब्ध देखने के लिए तरीकों तथा गुण इस हैशटेबल में, इस कमांड को उसी पावरशेल आईएसई पर चलाएं।

अगर मेरा अमेज़न पैकेज कभी नहीं आता है तो मैं क्या करूँ?
|_+_|

उपरोक्त कमांड को चलाने के लिए, इसे अंतिम कोड के नीचे पेस्ट करें। फिर, इसे हाइलाइट करें और या तो F8 दबाएं या हाइलाइट किए गए आइकन पर क्लिक करें।

पावरशेल हैशटेबल तरीके और गुण

आदेश PowerShell कंसोल फलक पर परिणाम प्रदर्शित करेगा।

अभी के लिए, परिणाम के शीर्ष पर देखें। इसमें TypeName: System.Collections.Hashtable है।

यह पुष्टि करता है कि Get-Member Cmdlet में पाइप की गई वस्तु एक हैशटेबल है!

इस खंड के निम्नलिखित उप-अनुभागों में, मैं आपको दिखाऊंगा कि पावरशेल हैशटेबल के सामान्य तरीकों और गुणों का उपयोग कैसे करें।

मौजूदा हैशटेबल में आइटम कैसे जोड़ें या निकालें?

इस खंड में, आप मौजूदा पावरशेल हैशटेबल में नए आइटम जोड़ना सीखेंगे। इसके अलावा, आप यह भी सीखेंगे कि किसी मौजूदा पावरशेल हैशटेबल से किसी आइटम को कैसे हटाया जाए।

इससे पहले कि मैं इसमें गोता लगाऊं, मैं यह उल्लेख करना चाहता हूं कि आप एक खाली हैशटेबल भी बना सकते हैं। फिर, हैशटेबल में कुंजियाँ/मान जोड़ें - इस पर और बाद में।

मौजूदा पावरशेल हैटेबल्स में आइटम जोड़ने या हटाने के लिए वापस - जब हमने चलाया $हैशटेबल | प्राप्त सदस्यीय कमांड, परिणाम में प्रदर्शित विधियों में से एक है जोड़ें . एक तरीका यह भी है, हटाना .

नीचे स्क्रीनशॉट के हाइलाइट किए गए हिस्से देखें:

पावरशेल हैशटेबल तरीके और गुण

इससे पहले कि मैं आपको दिखाऊं कि इन दो विधियों का उपयोग कैसे किया जाता है, आइए मूल पावरशेल हैशटेबल कोड देखें:

|_+_|

हैशटेबल में 3 प्रविष्टियां हैं। इस उदाहरण में, मैं अपने 'मेरे दस्तावेज़' फ़ोल्डर में मूल्य मानचित्र के साथ विवरण नामक एक और कुंजी जोड़ूंगा।

इस कार्य को पूरा करने के लिए, मैं नीचे दिए गए आदेश को चलाऊंगा (उसी पावरशेल आईएसई कंसोल पर जो मैंने पिछले आदेश चलाए थे)

|_+_| ध्यान दें कि मैंने Add . का उपयोग कैसे किया तरीका . मैं हैशटेबल रखने वाले वेरिएबल के आगे एक अवधि (.) जोड़ता हूं। फिर, मैंने विधि शामिल की, जोड़ें , के बाद ()। अंत में, मैंने नई कुंजी/मूल्य जोड़ी शामिल की जिसे मैं हैशटेबल में जोड़ना चाहता हूं।

एक बार जब आप कमांड चलाते हैं, तो यह पुष्टि करने के लिए कि अतिरिक्त कुंजी जोड़ दी गई है, हाइलाइट करें $हैशटेबल और F8 दबाएं।

|_+_|

यहां परिणाम का एक स्क्रीनशॉट है - यह पुष्टि करते हुए कि नई कुंजी/मान जोड़ा गया है।

आगे बढ़ते हुए, आप PowerShell हैशटेबल से मान निकालने के लिए उसी दृष्टिकोण का उपयोग कर सकते हैं।

हैशटेबल में जोड़ी गई अंतिम कुंजी को हटाने के लिए, अंतिम कमांड के समान कमांड चलाएँ। इस बार हालांकि बदलें जोड़ें के साथ विधि हटाना तरीका।

यहाँ आदेश है:

|_+_| हटाना विधि में केवल शामिल है चाभी . आपको कुंजी शामिल करने की आवश्यकता नहीं है मूल्य आदेश में।

सबसे पहले, उपरोक्त कमांड चलाएँ। फिर, यह पुष्टि करने के लिए कि कुंजी हटा दी गई है, हाइलाइट करें $हैशटेबल और F8 दबाएं।

|_+_|

कमांड का परिणाम पुष्टि करता है कि कुंजी हटा दी गई है!

पावरशेल हैशटेबल के तरीके और गुण - मौजूदा हैशटेबल में आइटम कैसे जोड़ें या निकालें?

कैसे जांचें कि पावरशेल हैशटेबल में एक कुंजी है या नहीं?

जब हमने जल्दबाजी में नीचे पाइप किया प्राप्त सदस्यीय Cmdlet, प्रदर्शित विधियों में से एक है कंटेन्सकी विधि - नीचे स्क्रीनशॉट देखें।

|_+_|

कंटेन्सकी विधि का प्रयोग कई प्रकार से किया जा सकता है। हालांकि, इस पद्धति के सामान्य अनुप्रयोगों में से एक हैशटेबल में कोई कुंजी मौजूद है या नहीं, यह जांचने के लिए इसका उपयोग करना है और यदि ऐसा नहीं है, तो कुंजी जोड़ें।

का एक और अनुप्रयोग कंटेन्सकी पावरशेल हैशटेबल की विधि यह जांचने के लिए है कि हैशटेबल में कोई कुंजी नाम मौजूद है या नहीं।

यह जांचने के लिए कि पावरशेल हैशटेबल में कोई कुंजी मौजूद है या नहीं कंटेन्सकी विधि, नीचे कमांड चलाएँ:

|_+_|

यह आदेश जांचता है कि नाम के साथ एक कुंजी, विवरण $hashtable चर में सहेजे गए हैशटेबल में मौजूद है। आदेश का परिणाम गलत प्रदर्शित करता है।

पावरशेल हैशटेबल तरीके और गुण - कैसे जांचें कि पावरशेल हैशटेबल में एक कुंजी है या नहीं?

यह जाँचने के लिए कि विवरण कुंजी PowerShell हैशटेबल में जोड़ने से पहले मौजूद है या नहीं, हमें पिछली कमांड के लिए कोड की एक अतिरिक्त पंक्ति की आवश्यकता होगी।

यहां बेहतर कोड है।

|_+_|

कोड हैशटेबल में नाम, विवरण के साथ एक कुंजी मौजूद है या नहीं, यह जांचने के लिए कोड IF सशर्त विवरण का उपयोग करता है।

फिर, यदि परिणाम गलत है, तो IF स्टेटमेंट के कमांड निष्पादन भाग में, हम उपयोग करते हैं जोड़ें हैशटेबल में कुंजी जोड़ने के लिए पावरशेल हैशटेबल की विधि।

हालाँकि, यदि कुंजी हैशटेबल में मौजूद है, तो IF स्टेटमेंट के अन्य भाग में, हम उस व्यक्ति को सूचित करते हुए एक संदेश प्रदर्शित करते हैं जिसने कमांड चलाया था कि कुंजी पहले से मौजूद है।

अंतिम कमांड चलाने के बाद, हाइलाइट करें $हैशटेबल परिवर्तनीय और इसे अकेले चलाएं। परिणाम पुष्टि करता है कि कुंजी, विवरण को चर में जोड़ा गया था क्योंकि यह अस्तित्व में नहीं था।

यह जांचने के लिए कि क्या यह स्क्रिप्ट काम करती है - इसे फिर से चलाएँ…

|_+_|

इस बार, स्क्रिप्ट ने कुंजी नहीं जोड़ी। बल्कि, इसने IF स्टेटमेंट के अन्य भाग में जानकारी लौटा दी - हैशटेबल में कुंजी पहले से मौजूद है .

पावरशेल हैशटेबल तरीके और गुण - कैसे जांचें कि पावरशेल हैशटेबल में एक कुंजी है या नहीं?

पावरशेल हैशटेबल को स्ट्रिंग में कैसे बदलें

PowerShell हैशटेबल को स्ट्रिंग में बदलने का पहला चरण हैशटेबल में कुंजियों के मानों को वापस करना है। दूसरे शब्दों में, आप पावरशेल हैशटेबल को पावरशेल ऐरे में कनवर्ट करते हैं।

हैशटेबल में मान वापस करने के लिए, कॉल करें मूल्यों हैशटेबल की संपत्ति।

यहां वह आदेश है जो हैशटेबल में मान देता है:

|_+_|

एक बार जब आप पावरशेल हैशटेबल में मान वापस कर देते हैं, तो अगला कदम $ हैशटेबल को पाइप करना है आउट-स्ट्रिंग कमांड…

|_+_| बाद में इस गाइड में, आप पावरशेल हैशटेबल को एक स्ट्रिंग में बदलने के महत्व की सराहना करेंगे। वास्तविक दुनिया के SysAdmin स्क्रिप्टिंग में इसके व्यावहारिक अनुप्रयोग को देखने के लिए, पढ़ें।

पावरशेल हैशटेबल का उपयोग कैसे करें गणनाकर्ता प्राप्त करें तरीका

पावरशेल हैशटेबल का एक अन्य महत्वपूर्ण तरीका है गणनाकर्ता प्राप्त करें तरीका।

आप हैशटेबल में कुंजियों को अलग-अलग स्ट्रिंग्स में अलग करने के लिए इस विधि का उपयोग कर सकते हैं। यहाँ का एक नमूना आदेश है गणनाकर्ता प्राप्त करें हैशटेबल की विधि:

|_+_|

जैसा कि आप उपरोक्त आदेश के परिणाम से देख सकते हैं, कुंजी और मान अलग-अलग शीर्षलेखों में वापस कर दिए जाते हैं। मैं अब किसी एप्लिकेशन के बारे में नहीं सोच सकता, हालांकि, अगर आपको कभी भी पावरशेल हैशटेबल में चाबियों को तोड़ने की आवश्यकता होती है, तो आप जानते हैं कि इसे कैसे करना है!

पावरशेल हैशटेबल आइटम की गणना कैसे करें

एक और उपयोगी हैशटेबल संपत्ति है, गिनती . जैसा कि नाम से ही स्पष्ट है, यह संपत्ति हैशटेबल में कुंजियों की संख्या लौटाती है।

की तरह मूल्यों प्रॉपर्टी, काउंट प्रॉपर्टी को कॉल करने के लिए, नीचे दिए गए कमांड के समान कमांड का उपयोग करें:

|_+_|

कमांड पुष्टि करता है कि हैशटेबल, $ हैशटेबल में 4 कुंजियाँ हैं।

पावरशेल हैशटेबल आइटम की गणना कैसे करें

एक खाली पावरशेल हैशटेबल कैसे बनाएं और कुंजी जोड़ें

एक खाली पावरशेल हैशटेबल कैसे बनाएं और कुंजी जोड़ें

अब तक, इस S ज़ोन के सभी उदाहरणों ने मौजूदा कुंजियों के साथ PowerShell हैशटेबल में हेरफेर करने पर ध्यान केंद्रित किया है। इस खंड में, आप सीखेंगे कि एक खाली हैशटेबल कैसे बनाया जाता है।

फिर, हैशटेबल में कुंजियाँ जोड़ें।

एक खाली पावरशेल हैशटेबल बनाने के लिए, बस दर्ज करें @ संकेत, उसके बाद {} कोष्ठक। यहाँ एक चर में सहेजे गए खाली हैशटेबल का एक उदाहरण है, खाली हैशटेबल :

|_+_|

यह पुष्टि करने के लिए कि हैशटेबल बिना किसी मान के बनाया गया है, पिछली कमांड चलाएँ। फिर, वेरिएबल को अपने आप चलाएँ।

|_+_|

अगला कदम का उपयोग करना है जोड़ें हैशटेबल में कुंजियों/मानों को जोड़ने के लिए इस गाइड में पहले बताई गई विधि। इस उदाहरण में, मैं एक कुंजी जोड़ूंगा, जिसे कहा जाता है नाम , के मान के साथ डाक्यूमेंट .

यहाँ इस कार्य को करने का आदेश दिया गया है।

|_+_|

अंत में, यह पुष्टि करने के लिए कि मान सफलतापूर्वक जोड़े गए थे, चर चलाएँ, $Emptyhashtable:

|_+_|

अंतिम आदेश पुष्टि करता है कि मान सफलतापूर्वक जोड़े गए थे:

एकाधिक मान और एक कुंजी के साथ PowerShell हैशटेबल कैसे बनाएं

एकाधिक मान और एक कुंजी के साथ PowerShell हैशटेबल कैसे बनाएं

अब तक हमने जितने भी उदाहरणों को कवर किया है, उनमें पावरशेल हैशटेबल में एक की/वैल्यू पेयर है। हालाँकि, ऐसी परिस्थितियाँ होती हैं जब आपको हैशटेबल में एक से अधिक मानों वाली एकल कुंजी की आवश्यकता हो सकती है।

इस उदाहरण में, आप प्रभावी रूप से मानों के रूप में सरणियों के साथ हैशटेबल बनाना चाहते हैं।

शुरू करने के लिए, मुझे लगता है कि आपको उन कोडों को दिखाना बेहतर होगा जो मैंने एक हैशटेबल को एक सरणी से अलग करने के लिए उपयोग किया था।

|_+_| |_+_|

इसलिए, एकल कुंजियों और एकाधिक मानों के साथ PowerShell हैशटेबल बनाने के लिए, इसके समान एक स्क्रिप्ट चलाएँ:

|_+_|

उपरोक्त लिपि में, लॉगनाम हैशटेबल कुंजी है जबकि सिस्टम, एप्लिकेशन और सुरक्षा मान कुंजी को असाइन किए गए हैं। प्रभावी रूप से, हमने कई मूल्यों के साथ एक एकल जल्दबाजी योग्य कुंजी बनाई है।

में व्यक्तिगत मूल्यों को सूचीबद्ध करने के लिए लॉगनाम कुंजी, नीचे कमांड चलाएँ:

|_+_|

नीचे दिए गए स्क्रीनशॉट का भाग (1) लेबल किया गया हैशटेबल का परिणाम है, $हैशटेबलविथअरेज़ . इसके अलावा, लेबल किया गया भाग (2) का परिणाम दिखाता है $हैशटेबलविथअरेज़.वैल्यूज़ आदेश।

यदि आप विंडोज इवेंट लॉग से परिचित हैं - सिस्टम, एप्लिकेशन और सुरक्षा - विंडोज इवेंट लॉग के नाम हैं।

अगले भाग में, मैं आपको दिखाऊंगा कि उपरोक्त हैशटेबल के माध्यम से पुनरावृति करने के लिए पावरशेल फॉरएच लूप का उपयोग कैसे करें - और चलाएं गेट-इवेंटलॉग इन 3 इवेंट लॉग पर कमांड - एक पावरशेल स्क्रिप्ट का उपयोग करके।

ForEach लूप के साथ PowerShell हैशटेबल को कैसे पुनरावृत्त करें?

ForEach के साथ PowerShell हैशटेबल को कैसे पुनरावृत्त करें

पिछले खंड में, मैंने एकाधिक मानों के साथ एकल-कुंजी पावरशेल हैशटेबल बनाया।

इस खंड में उदाहरण के लिए, मैंने हैशटेबल को संग्रहीत करने वाले चर को बदल दिया है लॉगनामकुंजी . यहाँ अद्यतन स्क्रिप्ट है।

|_+_|

इस खंड में, मैं आपको सिखाऊंगा कि कैसे उपयोग करना है प्रत्येक के लिए में संग्रहीत मूल्यों के माध्यम से लूप करने के लिए लॉगनाम कुंजी और चलाएँ गेट-इवेंटलॉग आदेश।

PowerShell ForEach पर एक त्वरित पुनश्चर्या पाठ्यक्रम के लिए, PowerShell ForEach कमांड का सामान्य सिंटैक्स नीचे दिया गया है:

|_+_|

यदि आप उपरोक्त सिंटैक्स को हमारे . पर लागू करते हैं लॉगनाम हैशटेबल, अद्यतन आदेश इस तरह दिखेगा:

# से शुरू होने वाली पंक्तियाँ PowerShell टिप्पणियाँ हैं। |_+_|

स्क्रिप्ट का पहला भाग वही स्क्रिप्ट है जो एकाधिक मानों के साथ सिंगल-कुंजी पावरशेल हैशटेबल बनाता है। यहाँ स्क्रिप्ट है:

|_+_|

स्क्रिप्ट के दूसरे भाग में, मैंने ($LogNameKeys.Values) में संग्रहीत मानों को स्ट्रिंग्स में बदल दिया और परिणाम को दूसरे चर में सहेजा, LogNameKeysAsStrings .

|_+_|

अंत में, स्क्रिप्ट के तीसरे भाग में - ForEach लूप पेश किया गया है:

|_+_|

स्क्रिप्ट के इस भाग में, हम PowerShell को इसमें संग्रहीत प्रत्येक मान लेने के लिए कहते हैं लॉगनाम चाभी ( $LogNameKeysAsStrings ) - उस व्यक्तिगत मूल्य को अस्थायी रूप से चर में सहेजें लॉगनेमकी - फिर, चलाने के लिए अस्थायी चर का उपयोग करें गेट-इवेंटलॉग आदेश।

मैंने शामिल किया नवीनतम के पैरामीटर गेट-इवेंटलॉग 5 के मान के साथ कमांड ताकि कमांड प्रत्येक इवेंट लॉग की अंतिम 5 प्रविष्टियाँ लौटाए। जब आप पावरशेल स्क्रिप्ट को देखते हैं तो यह जटिल लग सकता है। हालांकि, अगर आप बारीकी से देखते हैं, तो यह आमतौर पर बहुत आसान होता है।

अब, नीचे दी गई स्क्रिप्ट को एक नए पावरशेल आईएसई दस्तावेज़ में कॉपी करें और इसे चलाएं।

PowerShell ISE को व्यवस्थापक के रूप में खोलें। यदि आप PowerShell ISE को व्यवस्थापक के रूप में नहीं खोलते हैं, तो आपको पहुँच त्रुटि संदेश प्राप्त होंगे। |_+_|

नीचे दिए गए स्क्रीनशॉट ने स्क्रिप्ट का परिणाम प्रदर्शित किया। परिणाम फलक में 15 पंक्तियाँ हैं - सिस्टम, एप्लिकेशन, सुरक्षा इवेंट लॉग के 5 का प्रतिनिधित्व करती हैं।

PowerShell हैशटेबल और चयन-वस्तु के साथ एक रिपोर्ट को कैसे अनुकूलित करें

PowerShell हैशटेबल और चयन-वस्तु के साथ एक रिपोर्ट को कैसे अनुकूलित करें

पिछले खंड में, हमने एक पॉवरशेल स्क्रिप्ट बनाई थी जो विंडोज इवेंट लॉग रिपोर्ट को खींचती है। पेश है रिपोर्ट का स्क्रीनशॉट

स्क्रिप्ट के डिफ़ॉल्ट आउटपुट में 5 कॉलम होते हैं - अनुक्रमणिका , समय , प्रवेश प्रकार , स्रोत , इंस्टेंसआईडी , तथा संदेश . यदि आप इसे एक रिपोर्ट के रूप में भेज रहे हैं, तो हो सकता है कि आप इन कॉलम नामों को उन नामों में बदलना चाहें जो आसानी से समझ में आ सकें।

यहाँ अंतिम खंड से स्क्रिप्ट है।

स्क्रिप्ट में थोड़ा बदलाव किया गया है। मेरे पास अब एक चर है, EventLogरिपोर्ट जो ForEach लूप के आउटपुट को सेव करता है। मैं समझाऊंगा कि यह बाद में क्यों आवश्यक है। |_+_|

इस स्क्रिप्ट से कॉलम हेडर नामों को संशोधित करने के लिए, हम पाइप करेंगे गेट-इवेंटलॉग एक को आदेश चयन-वस्तु आदेश।

फिर, के भीतर एक PowerShell हैशटेबल बनाएं चयन-वस्तु कमांड जो कॉलम नामों को संशोधित करता है। यहाँ संशोधित स्क्रिप्ट है जो जादू करती है।

|_+_|

लिपि वास्तव में जितनी है उससे कहीं अधिक जटिल प्रतीत होती है। हालाँकि, यदि आप सिलेक्ट-ऑब्जेक्ट के बाद स्क्रिप्ट के हिस्से पर ध्यान केंद्रित करते हैं, तो इस स्क्रिप्ट और पहले की कॉपी के बीच अंतर करना आसान होगा।

विशेष रूप से, मैंने हैशटेबल्स को इसमें शामिल किया है चयन-वस्तु कोड का ब्लॉक। प्रत्येक हैशटेबल के आउटपुट को अनुकूलित करता है गेट-इवेंटलॉग आदेश।

यहाँ से एक नमूना हैशटेबल है चयन-वस्तु खंड मैथा:

|_+_|

हमेशा की तरह, PowerShell हैशटेबल में दो तत्व होते हैं। कुंजी है नाम , मान है अभिव्यक्ति .

ध्यान देने योग्य एक और महत्वपूर्ण बात यह है कि प्रत्येक हैशटेबल के अंत में चयन-वस्तु ब्लॉक, एक अल्पविराम (,) है।

अंत में, यहाँ PowerShell में अंतिम स्क्रिप्ट का परिणाम है:

इससे पहले मैंने यह बताने का वादा किया था कि मैंने परिचय क्यों दिया $EventLogReport ForEach लूप के आउटपुट को बचाने के लिए वेरिएबल। इस चर के बिना, अंतिम परिणाम 3 इवेंट लॉग में से प्रत्येक के लिए 3 अलग-अलग परिणाम प्रदर्शित करेगा। हालांकि, पूरे परिणामों को एक चर में संग्रहीत करके, मैं इस चर को प्रारूप-तालिका में पाइप करने में सक्षम था - यह पूरे परिणाम को एक तालिका के रूप में प्रदर्शित करता है। यहाँ वह आदेश है जिसने जादू किया। |_+_|

सीएसवी को पावरशेल हैशटेबल निर्यात कैसे करें

पावरशेल हैशटेबल को CSV में कैसे निर्यात करें

इस अंतिम खंड में, आप सीखेंगे कि कैसे एक PowerShell हैशटेबल को CSV में निर्यात किया जाए।

इस खंड के लिए अपने पहले उदाहरण में, मैं आपको दिखाऊंगा कि कैसे इस हैशटैग को CSV में निर्यात किया जाए।

|_+_|

इस PowerShell हैशटेबल को CSV फ़ाइल में सफलतापूर्वक निर्यात करने के लिए, आपको इसका उपयोग करना होगा गणनाकर्ता प्राप्त करें मूल्यों को सूचीबद्ध करने की विधि (पहले चर्चा की गई)। अन्यथा, वास्तविक कुंजी/मूल्य जोड़े निर्यात नहीं किए जाएंगे।

यहां संशोधित स्क्रिप्ट है जो इसमें सहेजे गए हैशटेबल को निर्यात करती है हैश टेबल CSV फ़ाइल में परिवर्तनशील।

|_+_|

नीचे दी गई स्क्रिप्ट को पेश किया:

|_+_|

स्क्रिप्ट में शामिल हैं: गणनाकर्ता प्राप्त करें तरीका हैशटेबल में। फिर आउटपुट को पर पाइप करता है चयन-वस्तु आदेश।

अंत में, मैं के आउटपुट को पाइप करता हूं चयन-वस्तु को आदेश निर्यात-सीएसवी आदेश। उपयोग करने के तरीके के बारे में अधिक पढ़ने के लिए निर्यात-सीएसवी Cmdlet, हमारी मार्गदर्शिका पढ़ें - Powershell NoTypeInformation: अनुप्रयोग और उदाहरण।

जब आप इस स्क्रिप्ट को चलाते हैं, तो यह एक CSV फ़ाइल बनाता है जिसका नाम है हैशटेबल.सीएसवी , आपके द्वारा निर्दिष्ट पथ में। CSV फ़ाइल के आउटपुट के लिए नीचे स्क्रीनशॉट देखें।

|_+_|

अपने दूसरे उदाहरण में, मैं उस स्क्रिप्ट के आउटपुट को निर्यात करूंगा जिसे हमने पिछले खंड में बनाया था - इवेंट लॉग स्क्रिप्ट - एक CSV फ़ाइल में।

यहाँ स्क्रिप्ट है। रिपोर्ट को CSV में निर्यात करने के लिए, मैंने इस स्क्रिप्ट के अंत में इसके नीचे कोड जोड़ा है।

|_+_| |_+_|

कोड के आउटपुट को पाइप करता है प्रत्येक के लिए लूप - में सहेजा गया EventLogरिपोर्ट चर - से निर्यात-सीएसवी कमांड . जेनरेट की गई CSV फ़ाइल नीचे स्क्रीनशॉट में दिखाई गई है।

यही है - पावरशेल हैशटेबल के बारे में एक व्यापक गाइड! मुझे आशा है कि आपको यह मददगार लगा?

अगर आपको यह मददगार लगा, तो कृपया वोट करें हां क्या यह पोस्ट नीचे उपयोगी प्रश्न था।

वैकल्पिक रूप से, आप एक प्रश्न पूछ सकते हैं, एक टिप्पणी छोड़ सकते हैं या इस पृष्ठ के अंत में एक उत्तर दें प्रपत्र के साथ अधिक प्रतिक्रिया प्रदान कर सकते हैं।

अंत में, अधिक पावरशेल टेक एस जोन के लिए, हमारे विंडोज पावरशेल हाउ-टू गाइड पेज पर जाएं। आपको हमारा वर्क फ्रॉम होम पेज भी बहुत मददगार लग सकता है।

संदर्भ और आगे पढ़ना

  1. वह सब कुछ जो आप हैशटेबल्स के बारे में जानना चाहते हैं
  2. मौज-मस्ती और लाभ के लिए पॉवरशेल में एरेज़ और हैश टेबल्स को मिलाएं
  3. हैश टेबल्स के बारे में