2013-11-22 5 views
19

पारंपरिक सीएमडी में, हम निर्देशिका स्विच करने के लिए cd %programfiles% का उपयोग कर सकते हैं, आमतौर पर सी: \ प्रोग्राम फ़ाइलें।पावरशेल में "सीडी% प्रोग्रामफाइल%" के समतुल्य?

पावरशेल में, हम पर्यावरण चर द्वारा निर्देशिका में कैसे जा सकते हैं?

उत्तर

29

सिद्धांत है:

$env:variablename 

तो तुम कोशिश कर सकते हैं:

cd "$env:programfiles" 

या अस्थायी रूप से काम कर निर्देशिका स्विच करने के लिए:% programfiles% करने के लिए:

push-location -path "$env:programfiles" 
# 
# command execution here 
# 
pop-location 
+0

यदि मैं सी: \ प्रोग्राम फ़ाइलें \ सामान्य फ़ाइलें पर जाना चाहता हूं, तो मुझे आदेश कैसे लिखना चाहिए? यह बहुत अजीब लगता है कि मैं दो स्ट्रिंग्स को संयोजित करने के लिए 'cd $ env: ProgramFiles" \ Common Files "' के बिना + का उपयोग कर सकता हूं। क्या तुम समझा सकते हो? – Gqqnbig

+0

यह एक बहुत अच्छा सवाल है और मैं सप्ताहांत में इसे सोचूंगा। लेकिन एक जंगली अनुमान पर: मेरा मानना ​​है कि यह किसी भी तरह से शक्तियों के साथ काम नहीं करता है, चरित्र चरित्रों के साथ काम नहीं कर रहा है जैसे कि स्क्रिप्ट में उपयोग किया जाता है लेकिन वस्तुओं के साथ। क्या एक स्पष्टीकरण संभव है कि यह किसी ऑब्जेक्ट को स्ट्रिंग को पकड़ने के लिए तत्काल करेगा जिसमें कॉन्सटेनेशन तर्क होगा? इसके अलावा, शक्तियों में बहुत सी समान चाल हैं और मैं बस "अगर यह काम करता है, तो इसका इस्तेमाल करें"। उस ने कहा, मुझे लगता है कि आप एक चर के पथ के दूसरे भाग को भी असाइन कर सकते हैं और जैसे: "$ a \ $ b" यदि आपको यह अधिक सौंदर्य या कार्यात्मक रूप से प्रसन्नता मिलती है? – ErikE

+0

मुझे कुछ लेख समझाते हैं: http://www.roelvanlisdonk.nl/?p=1153 http://jrich523.wordpress.com/2011/07/01/powershell-working-with-strings/ – Gqqnbig

8

सभी पर्यावरण को देखने के लिए चर, यह करें:

dir env: 

सभी "कार्यक्रम" युक्त लोगों को देखने के लिए ऐसा करते हैं:

dir env: | ? { $_.Value -match 'Program' } 

PowerShell 3 में यह है क्लीनर:

dir env: | ? Value -match 'Program' 

एक हम चाहते हैं env:ProgramFiles है, और हम अभी कर सकते हैं ऐसा करें:

cd $env:ProgramFiles 
+0

वास्तव में कष्टप्रद कैसे यदि आप परिवर्तनीय नाम में एक टाइपो दर्ज करते हैं, तो यह चुपचाप बिना स्पष्टीकरण के विफल रहता है। – ArtOfWarfare

+0

हालांकि यह टैब-ऑटोकंपलेट प्रदान करता है हालांकि ... अच्छा। यह बेहतर होगा अगर '$ e'-tab पहले पर्यावरण चर पर कूदने के बजाय '$ env:' पर ​​स्वत: पूर्ण हो जाएगा, हालांकि ... – ArtOfWarfare