windows - विंडोज 10 पर पर्यावरण चर बहुत बड़ा है




path environment-variables (7)

मुझे पता है कि यह अजीब है और मैंने लगभग 3 दिन बिताए हैं एक उपयोगी समाधान के बिना ऑनलाइन समाधान खोजने में। इसलिए मैंने यहां आने का फैसला किया है।

मैंने हाल ही में विंडोज 8.1 से विंडोज 10 में अपग्रेड किया है।

अब मैं अपाचे मावेन की अपनी नई स्थापना के लिए एक पर्यावरण चर सेट करना चाहता था।

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

अब, हर बार जब मैं ऐसा करता हूं तो मुझे एक इरॉन मिलता है जो कहता है "यह पर्यावरण चर बहुत बड़ा है। इसके परिणामस्वरूप, मैं पथ बनाने में असमर्थ हूं।

मैंने इस त्रुटि की छवि संलग्न की है।

अगर कोई इस समस्या को हल करने में मेरी सहायता कर सकता है तो मैं इसकी सराहना करूंगा।

आपकी सहायता के लिए अग्रिम धन्यवाद।


Workarround। एडिट टेक्स्ट का उपयोग करें और अपने PATH को टेक्स्ट एडिटर में एडिट करें


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

https://www.rapidee.com/en/download


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

1) "एडिट टेक्स्ट" (ऊपर स्क्रीनशॉट देखें) पर क्लिक करके वर्तमान पैथ वेरिएबल को कैप्चर करें और इसे अपने क्लिपबोर्ड पर कॉपी करें और खराब आश्चर्य से बचने के लिए इसे बैकअप के रूप में टेक्स्ट फाइल में सेव करें। यह अनिवार्य नहीं है, लेकिन आपको ठीक होने की अनुमति देनी चाहिए ताकि कुछ गलत हो।

2) अब जब इसका बैकअप लिया गया है, तो एक नई पॉवरशेल (.ps1) फ़ाइल में जोड़ें (फ़ोल्डर पथ के साथ नीचे की पहली पंक्ति में संशोधन करें) जिसे आप जोड़ना चाहते हैं (+ चिन्ह के बाद वाला भाग):

$newPath = $env:Path + '; C:\Users\....\FirstFolderToAddToPath; C:\Users\....\SecondFolderToAddToPath;'

[Environment]::SetEnvironmentVariable("Path", $newPath, "Machine")

$env:Path = $newPath

इस तरह मैंने विंडोज 10 यूआई के साथ खेलने के बाद अपने (लंबे) पैथ वेरिएबल को वापस पाने में कामयाबी हासिल की, जो लंबाई की सीमा से पकड़े जा रहे थे और अपने ज्यादातर रास्ते खो रहे थे। मुझे उम्मीद है यह मदद करेगा।


जब PATH वैरिएबल बहुत अधिक मूल्यों के साथ ओवरलोड हो जाता है तो यह उस बिंदु पर पहुंच जाता है जहां आप अब और मान नहीं जोड़ सकते। निम्नलिखित को आजमाकर अपनी समस्या का समाधान करना चाहिए।

समाधान 1:

  1. एक नया सिस्टम वैरिएबल बनाएं 'NEWPATH'
  2. 'NEWPATH' के लिए बिन निर्देशिका स्थान निर्दिष्ट करें
  3. अब अपेंडेंट ' ; % NEWPATH% 'PATH चर में

यदि यह अभी भी काम नहीं करता है, तो PATH चर के कुछ हिस्से को पहले से ही मौजूद मानों को 'NEWPATH' में कॉपी करने की कोशिश करें और फिर 'NEWPATH' को जोड़ दें।

समाधान 2:

यदि आप पथों को समूह और छोटा कर सकते हैं, तो पथ चर का मान जांचें। उदाहरण के लिए,

C: \ Program Files \ Microsoft SQL Server \ 102 \ Tools \ Binn \; C: \ Program Files \ Microsoft SQL Server \ 102 \ DTS \ Bin \;

को जोड़ा जा सकता है

C: \ Program Files \ Microsoft SQL Server;

इस तरह आप अपनी निश्चित लंबाई के पैठ चर में अधिक स्थान बना सकते हैं और अंत में अपने बिन निर्देशिका स्थान को पेट में समायोजित कर सकते हैं।

आशा है कि यह आपकी मदद करता है!


मैंने पाया कि आप PowerShell के माध्यम से कर सकते हैं।

[System.Environment]::SetEnvironmentVariable("PATH", "C:\Program Files (x86......etc.....", "Machine")

इसलिए मैंने मौजूदा सिस्टम PATH को पकड़ा, जिसे नोटपैड में चिपकाया गया, अपनी नई चीज़ जोड़ी, फिर ऊपर के "C: \ Program Files" बिट में पेस्ट किया। पथ अद्यतन किया गया। किया हुआ।


युक्ति:

कृपया सिस्टम को पुनरारंभ करें। सिस्टम को पुनरारंभ करने के बाद, PATH अब खाली नहीं है, लेकिन 2047 (4095) वर्णों में विभाजित हो सकता है यदि सिस्टम पुनरारंभ कृपया मदद नहीं करता है:

लॉन्च c: \ windows \ system32 \ regedit.exe रजिस्ट्री हाइव पर जाएं "HKLM \ System \ CurrentControlSet \ Control \ Session Manager \ Environment" "पथ" कुंजी से अनावश्यक निर्देशिकाओं को साफ़ करें सिस्टम को पुनरारंभ करें

नोट: कुछ असाधारण मामलों में यदि सिस्टम कृपया शुरू करने में सक्षम नहीं है:

सुरक्षित मोड में लॉग इन करें कमांड प्रॉम्प्ट शेल खोलें और टाइप करें: reg जोड़ें "HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" / v पथ / t REG_EXPAND_SZ / d ^% SystemRR ^ ^% \ system32; ^% SystemRoot ^% / च

अधिक जानकारी के लिए: https://software.intel.com/en-us/articles/limitation-to-the-length-of-the-system-path-variable


regedit द्वारा संशोधित करने का प्रयास regedit , मेरे मामले में यह काम करता है जब लंबाई 3000 से अधिक हो जाती है।

Win + R दबाएं और regedit खोलने के लिए regedit दर्ज करें। Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment , और अपने पथ के Path को संशोधित करें। और कंप्यूटर को पुनरारंभ करें, यह काम करना चाहिए।





environment-variables