आप रिबूट किए बिना विंडोज पर्यावरण चर कैसे जोड़ते हैं?


181

मैं एक विंडोज मशीन (डेस्कटॉप या सर्वर) के लिए एक पर्यावरण चर जोड़ना चाहूंगा और उस मशीन को रिबूट किए बिना इसका उपयोग करने में सक्षम होऊंगा।

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


2
मेरा भी यही मुद्दा था। मैंने कहीं पढ़ा है कि explorer.exe प्रक्रिया को मारने से चर अपडेट होते हैं और यह काम करता है। तब मुझे सिर्फ टास्क मैनेजर से एक्सप्लोरर चलाना पड़ा।
user19694

1
आपको अपने मार्ग चर को अपडेट करने के लिए कमांड प्रॉम्प्ट को बंद करना होगा और इसे फिर से खोलना होगा। Cmd शुरू होने पर वेरिएबल लोड होता है।
NiLInfinite

जवाबों:


162

पर्यावरण चर में परिवर्तन तुरंत प्रभावी होना चाहिए, यदि आप प्रश्न में कंप्यूटर के लिए मुख्य गुण संवाद के माध्यम से परिवर्तन करते हैं (मेरे कंप्यूटर पर जाएँ। गुण | उन्नत | पर्यावरण चर)। परिवर्तनों को सहेजे जाने के बाद, एक्सप्लोरर WM_SETTINGCHANGEउन्हें परिवर्तन की सूचना देने के लिए सभी विंडो पर एक संदेश प्रसारित करता है। किसी भी प्रोग्राम को एक्सप्लोरर के माध्यम से देखा जाता है इसके बाद अद्यतन वातावरण प्राप्त करना चाहिए, हालांकि पहले से चल रहे कार्यक्रम तब तक नहीं होंगे, जब तक कि वे सेटिंग परिवर्तन संदेश को संभाल नहीं लेते।

मैं आपकी समस्या के वर्णन से यह नहीं बता पा रहा हूँ कि आपको इससे क्या समस्या है। क्या आप हमें उस विशिष्ट परिदृश्य के बारे में बता सकते हैं जो काम नहीं कर रहा है?

यह KB आलेख उपयोग का भी हो सकता है: सिस्टम में पर्यावरण चर का प्रचार कैसे करें


2
ठीक है, मुझे लगता है कि मैंने एक व्यवहार सेवा या कुछ पर इस व्यवहार को देखा होगा। मैंने ऊपर वर्णित विधि का उपयोग करके एक नया पर्यावरण चर जोड़ा। फिर, मैं एक नया कमांड प्रॉम्प्ट खोलने और "इको% <myvar>%" कमांड का उपयोग करने के बाद मूल्य देख पा रहा था। आपके जवाब के लिए दोनों को धन्यवाद।
चाड ब्रौन-डुइन

5
PowerShell उपयोगकर्ताओं के लिए यह स्निपेट मदद का हो सकता है: poshcode.org/2049
एंडर्स ज़ोमारिन

8
यदि cmd का उपयोग कर रहे हैं, तो आपको इसे फिर से शुरू करने की आवश्यकता है यदि env चर
नील McGuigan

4
बस मेरे पीसी पर स्काला स्थापित किया है, लेकिन पथ अद्यतन नहीं किया; संभवतः MSI ने WM_SETTINGCHANGE संदेश प्रसारित नहीं किया था। मैंने एक डमी सिस्टम वैरिएबल यानी CHANGE_TO_UPDATE = z जोड़ा, जिसे मैं WM_SETTINGCHANGE संदेश - समस्या हल करने के लिए अद्यतन करता हूं
डैरेन बिशप

3
लिंक के लिए 404 :-(
समोथ

63
  1. एक कमांड प्रॉम्प्ट प्रकार में: runas /user:yourusername@yourdomain cmd
  2. यह एक नया cmd प्रॉम्प्ट खोलेगा, फिर टाइप करें: taskkill /f /im explorer.exe
  3. फिर टाइप करें: explorer.exe

अब सभी कमांड प्रॉम्प्ट को बंद करने के बाद, आप देखेंगे कि PATHचर वास्तव में अपडेट किया गया है।

सभी कमांड प्रॉम्प्ट को बंद करना होगा। एक नया कमांड प्रॉम्प्ट फिर से खोलें, पथ टाइप करें और आप नया डेटा देखेंगे।


6
इस पृष्ठ के सभी उत्तरों में से, यह केवल वही है जो वास्तव में मेरे लिए काम करता है। धन्यवाद!!
coredumperror

2
इसने मेरे लिए काम किया। मुझे लगता है कि समस्या यह है कि यदि आप एक्सप्लोरर के माध्यम से cmd चलाते हैं (आपको लंबे रास्तों में टाइप करने के लिए बचाने के लिए) तो एक्सप्लोरर कभी भी बंद नहीं होता है, भले ही आप सभी एक्सप्लोरर विंडो बंद कर दें। समाधान के लिए धन्यवाद :)
स्टीव मैक

मेरे लिए काम किया। आप एक्सप्लोरर कार्यों को मारने के लिए टास्क मैनेजर का भी उपयोग कर सकते हैं और इसे पुनः आरंभ कर सकते हैं (फ़ाइल> नया कार्य चलाएँ)।
adabyron

7
उह। कृपया विंडो एक्सप्लोरर को तब तक न मारें जब तक कि उसकी कोई प्रक्रिया लटका नहीं दी जाती। इसके बजाय, शटडाउन विंडोज़ डायलॉग खोलें और होल्ड करते समय इसे रद्द करें ctrl+alt+shift। कि सफाई से विंडोज एक्सप्लोरर से बाहर निकलेगा। विस्टा + में शटडाउन विंडोज़ संवाद को खोजने में कठिन है (लेकिन अभी भी मौजूद है, कम से कम 7 के माध्यम से (8 और 10 के बारे में अनिश्चित), इसलिए एक दूसरी विधि है। ctrl + shift + स्टार्ट मेन्यू के खाली हिस्से में राइट-क्लिक करें और एक्जिट एक्सप्लोरर चुनें। 8 में निकास विकल्प समान है, लेकिन आप टास्कबार का उपयोग करते हैं स्टार्ट मेन्यू नहीं।
केविन कैथार्ट

1
+1 यह विंडोज 7. एफवाईआई पर एक आकर्षण के रूप में काम करता है, मैंने बस CTRL + ALT + SHIFT का उपयोग किया था और विंडोज टास्क मैनेजर से मैंने सभी explorer.exe प्रक्रिया को मार डाला और फिर न्यू टास्क बटन को हिट करके इसे फिर से शुरू किया ।
मार्को डेमायो

19

एक बात का ध्यान रखें कि कई प्रोग्राम पर्यावरण वेरिएबल्स प्राप्त करते हैं जब वे पहली बार शुरू होते हैं, इसलिए जब विंडोज़ को पुनरारंभ करने की आवश्यकता नहीं हो सकती है, तो कुछ प्रोग्राम नए वेरिएबल्स का उपयोग करने में सक्षम होने से पहले हो सकते हैं। इसका एक अच्छा उदाहरण एक नया कमांड प्रॉम्प्ट विंडो खोलने के लिए है, जिसमें एक PATH जोड़ने के बाद (हाँ, मुझे इसके द्वारा जोड़ दिया गया है)।


3
यह समस्याएं सभी सेवाओं को प्रभावित करती हैं, यहां तक ​​कि पुनः आरंभ की गई सेवा नए पर्यावरण चर भी नहीं देखेगी।
गिमेल

1
क्या आप सुनिश्चित हैं कि यह svchost प्रक्रिया साझा करने के कारण नहीं है?
मार्क सोउल

16

जब तक मेरे पास इस प्रश्न के उच्चतम मत वाले उत्तर पर टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा नहीं है, मैं बताना चाहूंगा कि यह बिल्कुल सही नहीं है। मुझे यह पता है क्योंकि इस पोस्ट में मैंने जो भी काम करने की कोशिश की, वास्तव में कुछ भी काम नहीं किया।

केबी लेख है कि जवाब में से जुड़ा हुआ वास्तव में कहा गया है कि:

हालाँकि, ध्यान दें कि पर्यावरण चर में संशोधन तत्काल परिणाम नहीं देता है। उदाहरण के लिए, यदि आप बदलाव करने के बाद एक और कमांड प्रॉम्प्ट शुरू करते हैं, तो पर्यावरण चर पिछले (वर्तमान नहीं) मूल्यों को प्रतिबिंबित करेगा। जब तक आप लॉग ऑफ नहीं करते तब तक परिवर्तन प्रभावी नहीं होता और फिर लॉग ऑन होता है।

कमांड प्रॉम्प्ट को फिर से लोड करने के बाद पिछले मानों को रीसेट करने वाले पर्यावरण चर के बारे में वही हिस्सा है जो मैंने विंडोज सर्वर 2008 में अनुभव किया था।

लेख में कहा गया है:

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

इसका मतलब यह नहीं है कि जब आप सिस्टम वातावरण चर को बदल देते हैं या वास्तव में काम करता है, तो एक्सप्लोरर WM_SETTINGCHANGE संदेश प्रसारित करता है। मुझे यकीन नहीं है कि आप कमांड प्रॉम्प्ट से KB आलेख में (तुरंत बदलावों को प्रचारित करने के लिए) क्या सुझाव देंगे।


1
यह एकमात्र उत्तर है जो मेरे लिए सही है। एक्सप्लोरर को कठिन तरीके से मारने या "उचित" तरीके सहित दूसरों में से कोई भी फर्क नहीं पड़ता है।
हाशिम

4

एनवी करें। चर सीधे उपलब्ध:

1. Open a shell

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

2. PATH=%PATH%;C:\type\your\new\path\here

जांचें कि आपका नया पथ पर्यावरण चर में जोड़ा गया है

3. echo %PATH%

किया हुआ।

रिबूट पर चर उपलब्ध कराएं

1. Press WinLogoKey+Pause/Break
2. On the left pane, press 'Advanced System Settings'
3. On the 'Advanced' tab, click 'Environment Variables'
4. In 'System Variables' choose the one you want to modify
5. Click Ok

परीक्षण किया गया और विंडोज 7/10 पर काम कर रहा है


3

सेवाओं के लिए एक संभावित समाधान उन्हें अस्थायी रूप से किसी अन्य उपयोगकर्ता (LocalSystem, LocalService, NetworkService के अलावा) के रूप में चलाना है। उदाहरण के लिए अपाचे सेवा बिना किसी समस्या के काम करती है। सेवा खाता खोलने के लिए सेवाओं को खोलें। एसएमएस कंसोल, सेवा का चयन करें, सेवा गुणों पर क्लिक करें और दूसरे टैब पर उपयोगकर्ता के लिए लॉगऑन क्रेडेंशियल दर्ज करें। सेवा को पुनरारंभ करें और यह पर्यावरण चर आज तक होना चाहिए।

यदि यह एक उपयोगकर्ता है जो इस से लॉग इन किया गया है तो उसे बिना किसी समस्या के काम करना चाहिए। यदि आप वर्तमान उपयोगकर्ता खाते का उपयोग कर रहे हैं, तो explorer.exe को पुनरारंभ करना भी आवश्यक हो सकता है। यह भी ध्यान दें कि सामान्य उपयोगकर्ता खाते के रूप में चल रही सेवाएं सुरक्षा जोखिम पैदा कर सकती हैं।


1

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

जैसे

setx PATH "%PATH%;c:\temp\my\new\path"

कृपया ध्यान दें कि ऊपर वर्तमान कमांड विंडो में काम नहीं करेगा और प्रभावी होने से पहले आपको एक नई कमांड विंडो खोलने की आवश्यकता होगी। परिणामस्वरूप, उपयोग के मामले पर निर्भर करता है; आपको उपरोक्त अन्य तकनीकों में से एक के साथ इसे संयोजित करने की आवश्यकता हो सकती है।

कृपया अतिरिक्त विवरण के लिए निम्न URL देखें :


काम नहीं करता है: / "अमान्य वाक्यविन्यास"
जो डीएफ

1
अब कोशिश करो। जाहिर तौर पर इसे दोहरे उद्धरण चिह्नों की जरूरत थी।
डग

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