bash उपनाम पावरशेल के बराबर है?


12

डिफ़ॉल्ट रूप से मेरा Windows PowerShell शुरू होता है C:\Users\Santosh, मेरा XAMPP इंस्टॉलेशन है, D:\इसलिए htdocs फ़ोल्डर में स्थित है D:\xampp\htdocs। अगर मुझे htdocs फोल्डर में कुछ एडिट करना है तो मुझे फुल टाइप करना होगा cd D:\xampp\htdocs\ (स्वतः पूर्ण नहीं है तो वह टाइप है) फिर उस फाइल को एडिट करें।

यदि यह PowerShell Bash था, तो मैं इसे .bash_aliases फ़ाइल में करूंगा:

alias htdocs='cd D:\xampp\htdocs'

क्या बैश उपनामों को फ़ाइल और उर्फ ​​पॉवरशेल में किसी भी कमांड को बनाए रखना संभव है?

जवाबों:


12

आप एक पॉवरस्क्रिप्‍ट लिपि या फ़ंक्शन के साथ समन्‍वय में सेट-अलियास कमंड चाहते हैं । तो एक संपादक खोलें और लिखें:

set-location d:\xampp\htdocs

और इस फ़ाइल को उदाहरण के लिए c: \ Users \ kumar \ htdocs32.ps1 पर सहेजें या आप इस तरह से एक फ़ंक्शन बना सकते हैं।

function htdocs32 { set-location d:\xampp\htdocs }

स्क्रिप्ट निष्पादित करने के लिए आपको स्थानीय रूप से स्क्रिप्ट की अनुमति देने वाली निष्पादन नीति निर्धारित करनी चाहिए। व्यवस्थापक और प्रकार के रूप में पॉवरशेल कमांड लाइन खोलें:

set-executionpolicy remotesigned

अब आप पॉवरशेल स्क्रिप्ट के लिए एक उपनाम सेट करने में सक्षम हैं:

set-alias htdocs c:\Users\kumar\htdocs32.ps1

और टाइपिंग htdocs अब आप अपने htdocs फ़ोल्डर में सीडी जाएगा

पॉवर्सशेल तथाकथित cmdlets के नामकरण के लिए एक क्रिया-संज्ञा संयोजन का उपयोग कर रहा है । क्रिया आप क्या करना चाहते हैं और संज्ञा क्या आप कुछ करना चाहते हैं के साथ उलट।

सेट-अलियास कमांड के लिए सहायता प्राप्त करना जिसे आप उपयोग करना चाहते हैं:

get-help set-alias -full  |more 

और कोई कम नहीं है। अन्य विधि इस http://technet.microsoft.com/en-us/library/ee176958.aspx को पढ़ रही होगी

इसके अलावा पावर शेल से शुरू करने के लिए मैं आपको इस url पर एक नज़र डालने की सलाह देता हूं: http://www.powershellpro.com/powershell-tutorial-introduction/

उपनाम को स्थायी रूप से सहेजने के लिए आपको इसे अपने उपयोगकर्ता प्रोफ़ाइल में सहेजना होगा। पहला परीक्षण कि क्या प्रोफ़ाइल पहले से उपयोग में है:

PS C:\> $profile

यदि आप झूठे हो रहे हैं, तो आप टाइप करके एक नया प्रोफ़ाइल बना सकते हैं:

 New-Item -path $profile -type file -force

अब आप फ़ाइल को संपादित कर सकते हैं

c:\Users\kumar\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

और फ़ंक्शन निश्चित और एक उपनाम में डाल दिया। जैसा ऊपर बताया गया है।

हालाँकि, linux में इसके लिए एक उपनाम सेट करना नेक्सेसरी नहीं है। sicne bash के लिए एक पर्यावरण योग्य $ CDPATH है जिसे ~ / .bahsrc में सेट किया जा सकता है।


क्या कोई ऐसी फ़ाइल है जहाँ ये उपनाम संग्रहीत हैं? अगर मैं इसका बैकअप लेता हूं तो यह बहुत काम आएगा।
संतोष कुमार

करने Cannot resolve alias 'htdocs' because it refers to term 'cd D:\xampp\htdocs', which is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try again.पर हो रही हैset-alias htdocs "cd D:\xampp\htdocs"
संतोष कुमार

ठीक है आप बेहतर ढंग से एक ckdlet लिखें। एक टेक्स्टडिटर खोलें और लिखें: set-locaation c: \ xampp \ htdocs और इस फाइल को htdocs32.ps1 के रूप में सहेजें। यह मानते हुए कि htdocs32.ps1 को c: \ Users \ kumar \ htdocs32.ps1 में सहेजा गया था, आप सेट-अलियास htdocs c: \ Users \ kumars \ htdocs32.ps1 का उपयोग कर सकते हैं। सुनिश्चित करें कि आपने निष्पादन नीति को आकस्मिक रूप से निर्धारित किया है।
l1zard

@SantoshKumar आपके समाधान को DRIVE फिर निर्देशिका को बदलने के लिए '/ d' ध्वज की आवश्यकता है "cd / d D: \ xampp \ htdocs"
एडी बी

2

वास्तव में आप यह कोशिश कर सकते हैं, यह स्वचालित रूप से लोड किए गए मॉड्यूल का निर्माण करेगा।

C के अंतर्गत: \ Users \ kumar \ Documents \ WindowsPowerShell \

यदि मौजूद नहीं है, तो एक नया फ़ोल्डर मॉड्यूल बनाएं।

PS C:\>mkdir Modules

मॉड्यूल के तहत एक फ़ोल्डर कॉल एक्स बनाएं: "क्विकी"

PS C:\>mkdir Quicky

"Quicky.psm1" नामक एक फ़ाइल बनाएँ, .psm1 मॉड्यूल के लिए विस्तार है।

फ़ाइल को संपादित करें और उस लाइन को जोड़ें।

function htdocs32 { set-location d:\xampp\htdocs }

मॉड्यूल सहेजें।

फिर बस "htdocs32" फ़ंक्शन को कॉल करें

PS C:\>htdocs32

0

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

htdocs.ps1 (इसे अपने पेट पर कहीं रखें, मैं खुद cdhtdocs.ps1 के साथ जाऊंगा , लेकिन यह आपका नामकरण सम्मेलन है)

chdir "d:\xampp\htdocs"

नोट: यह आवश्यकतानुसार ड्राइव को बदलने के लिए भी काम करेगा । यदि आप c: \ temp \ के साथ शुरू करना चाहते हैं तो यह काम करेगा ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.