विंडोज 8 में पर्यावरण चर को बदलने का आसान तरीका? [डुप्लिकेट]


27

संभावित डुप्लिकेट:
PATH और अन्य पर्यावरण चर क्या हैं, और मैं उन्हें कैसे सेट या उपयोग कर सकता हूं?

मुझे पता है कि मैं विंडोज 8 में अपने पर्यावरण चर को संपादित कर सकता हूं

Start -> All Apps -> Control panel -> System -> 
    Advanced System Settings -> Advanced -> Environment variables.

लेकिन ईमानदारी से, यह हास्यास्पद रूप से जटिल है।

क्या विंडोज 8 में पर्यावरण चर को बदलने का एक आसान तरीका है?

उदाहरण के लिए अगर मैं सिर्फ नए फ़ोल्डर को PATH में जोड़ना चाहता हूं, तो इन सभी चरणों से गुजरना वास्तव में कष्टप्रद है। यूआई भी बेकार है, क्योंकि छोटे पाठ इनपुट के साथ लंबे चर मूल्यों को संपादित करना वास्तव में दर्दनाक है।

आवश्यकता 1: मुझे परिवर्तन जारी रखने की आवश्यकता है (जैसे जब मैं setकंसोल में उपयोग करता हूं तो कंसोल बंद होने पर परिवर्तन खो जाता है)

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


विषय के बारे में अच्छी पोस्ट: windows-commandline.com/set-path-command-line
रॉयई

जवाबों:


32

क्या आपने सेट और सेटक्स कमांड का पता लगाया है ? उनके साथ आप एक सतत चर सेट कर सकते हैं। इसके अलावा, मूल्य तुरंत लागू किया जाएगा, अगले लॉगऑन के बाद नहीं।

विंडोज़ SETकमांड का उदाहरण :

PATH पर्यावरण चर प्रिंट करें:

C:\Users\Charity>echo %PATH%
C:\windows\system32;C:\windows and space;C:\foobar

पथ चर को सेट करने के लिए सेट कमांड का उपयोग करें

C:\Users\Charity>set PATH=%PATH%;C:\epicpath
C:\Users\Charity>

उपरोक्त आदेश केवल वर्तमान विंडो पर लागू होता है और cmd विंडो बंद होने पर परिवर्तन खो जाता है।

C:\Users\Charity>echo %PATH%
C:\windows\system32;C:\windows and space;C:\foobar;C:\epicpath

विंडोज़ SETXकमांड का उदाहरण :

PATH पर्यावरण चर प्रिंट करें:

C:\Users\Charity>echo %PATH%
C:\windows\system32;C:\windows and space;C:\foobar

वातावरण चर सेट करने के लिए setx का उपयोग करें:

C:\Users\Charity>setx PATH "%PATH%;C:\zombiepoke"
SUCCESS: Specified value was saved.

बंद करें और cmd टर्मिनल खोलें, फिर चलाएँ:

C:\Users\Charity>echo %PATH%
C:\windows\system32;C:\windows and space;C:\foobar;C:\zombiepoke

आपको दोहरे उद्धरण चिह्नों से सावधान रहना होगा। यदि आप उद्धरणों को अपने पथ चर में आते हैं तो यह कुछ तोड़ सकता है। हालाँकि वे मूल% PATH% में परिशिष्ट निर्दिष्ट करने के लिए आवश्यक हैं।


1
पारितोषिक के लिए धन्यवाद! मैंने कोशिश की, setx PATH=%PATH%;;C:\testलेकिन मुझे सिंटेक्स त्रुटि
मिली

2
Setx का उपयोग करते समय कोई संकेत नहीं है। सेटेक्स / करते हैं?
ईबीग्रीन

4
कोई आर्गन्स "सेटेक्स" केवल उपयोगकर्ता के संदर्भ में चर सेट नहीं करता है। सिस्टम के संदर्भ में सेट करने के लिए "सेटेक्स / एम" का उपयोग करें। इसके बारे में जानकारी नहीं होने से आप भ्रमित हो सकते हैं क्योंकि "इको% PATH%" सिस्टम और उपयोगकर्ता के मानों को प्रदर्शित करेगा।
विएटुएल

ध्यान दें, प्रभावी होने के लिए आपको यह परिवर्तन करने के बाद शेल को पुनरारंभ करना होगा।
डग

मामूली टिप्पणी: set path= ~ echo %PATH% [[ set pathभी मूल्य दिखाता है PATHEXT]
gerryLowry

10

विंडोज 8 में पर्यावरण चर सेट करें।

आप Computerएक क्लिक करके file-explorerऔर उसमें जाकर उन्नत सिस्टम सेटिंग को एक्सेस कर सकते हैं properties

यह विंडोज़ के पुराने संस्करणों के समान है। आप यहां दिए गए कमांड लाइन से पर्यावरण चर भी सेट कर सकते हैं:

पीएटीएच और अन्य पर्यावरण चर क्या हैं, और मैं उन्हें कैसे सेट या उपयोग कर सकता हूं?


4

मैं उन्हें पॉवर्स में बदल देता हूं। उदाहरण के लिए PATH वैरिएबल में एक फ़ोल्डर जोड़ने के लिए, फिर शक्तियां खोलें:

$newPath = $env:Path + ';C:\Temp'
[Environment]::SetEnvironmentVariable('Path', $newpath, 'Machine')

यह सभी उपयोगकर्ताओं के लिए इसे बदल देगा। कमांड चलाने वाले उपयोगकर्ता के लिए इसे बदलने के लिए, उस अंतिम पैरामीटर को 'उपयोगकर्ता' में बदलें। या सिर्फ इस सत्र में इसे अस्थायी रूप से बदलने के लिए:

$env:Path += ';C:\temp'

महान! आप $ env: Path + 'कैसे करते हैं? C: \ Temp' कमांड प्रॉम्प्ट पर उपलब्ध है? यहां सेट एंड सेटक्स सॉल्यूशंस समझाते हैं कि कमांड प्रॉम्प्ट पर पूरे पथ को कैसे सेट किया जाए, लेकिन कोई भी नहीं समझाता है कि मौजूदा पथ पर कुछ कैसे भेजें।
जॉनी

यहां बताया गया है कि कमांड प्रॉम्प्ट पर मौजूदा पथ के लिए कुछ कैसे भेजें। / M का उपयोग सिस्टम वेरिएबल को बदलने के लिए किया जाता है, बजाय USER वेरिएबल के। "मेरा फ़ोल्डर" के बाद से उद्धरण का उपयोग किया जाता है: रिक्त स्थान शामिल हैं: सेट पाथ "% पथ%; सी: \ मेरा फ़ोल्डर" / एम
जॉनी क्यों

केवल कमांड प्रॉम्प्ट का उपयोग करने की समस्या 255 वर्ण सीमा है, और सिस्टम पथ अधिक होने की संभावना है (विशेषकर यदि आप अधिक निर्देशिकाओं को जोड़ रहे हैं)। इसके बाद, पॉवर्सहेल जाने का तरीका है (मैं गलत हो सकता है, लेकिन मेरा मानना ​​है कि पॉवर्सशेल के साथ कोई चरित्र-गणना सीमा नहीं है)।
जॉनी क्यों

3

यह कमांड लाइन पर बहुत आसान है:

set MyVar=HelloWorld

(कमांड लाइन पर जाने के लिए, cmdस्टार्ट स्क्रीन से टाइप करें >)

एक चर देखने के लिए:

echo %MyVar%

setxएक चर को स्थायी रूप से सेट करने के लिए उपयोग करें । वाक्यविन्यास थोड़ा अलग है। यहां देखने का प्रयास करें , या वहां बहुत सारी साइटें हैं जो आपको बताएंगी कि इसका उपयोग कैसे करना है।


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

क्या आप जानते हैं कि अगर मैं ऐसा कर सकता हूं तो setवह कायम रहेगा?

1
setx स्थायी परिवर्तनों के लिए है
EBGreen

क्या अगले पुनरारंभ तक सिर्फ चर सेट करने का एक तरीका है? अन्यथा, अगर मैं किसी अन्य प्रोग्राम से सेट का उपयोग करता हूं (मान लीजिए कि पायथन या MATLAB से OS कमांड), तो क्या यह तब तक आयोजित होगा, जब तक कि कार्यक्रम का सत्र खुला है?
रॉयई
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.