উইন্ডোজ 10-এ পরিবেশ পরিবর্তনশীল খুব বড়


147

আমি জানি এটি অদ্ভুত এবং আমি প্রায় 3 দিন কোনও কার্যকর না পেয়ে অনলাইনে সমাধান অনুসন্ধান করতে ব্যয় করেছি। তাই আমি এখানে আসার সিদ্ধান্ত নিয়েছি।

আমি সম্প্রতি উইন্ডোজ 8.1 থেকে উইন্ডোজ 10 এ আপগ্রেড করেছি।

এখন আমি আমার অ্যাপাচি মাভেনের নতুন ইনস্টলেশনটির জন্য পরিবেশ পরিবর্তনশীল সেট করতে চেয়েছিলাম।

প্রতিবার আমি ব্যবহারকারী পরিবর্তনশীল তৈরি করার সময় জিনিসগুলি ঠিক আছে fine যাইহোক, আমি সিস্টেম ভেরিয়েবলটি তৈরি করতে হবে যেখানে আমি ইউজার ভেরিয়েবলটিতে "পথ" হওয়ার জন্য যে ভেরিয়েবলটি তৈরি করতে চাইছি তার জন্য বিন ডিরেক্টরিটি যুক্ত করতে হবে।

এখন, প্রতিবার আমি যখন এটি করি তখন আমি এমন একটি ত্রুটি পাই যা বলে যে "এই পরিবেশ পরিবর্তনশীল খুব বড়। এর ফলস্বরূপ, আমি পথ তৈরি করতে অক্ষম।

আমি এই ত্রুটির চিত্র সংযুক্ত করেছি।

কেউ যদি এই সমস্যা সমাধানে আমাকে সহায়তা করতে পারে তবে আমি এটির প্রশংসা করব।

আপনার সহায়তার জন্য আগাম ধন্যবাদ।এখানে চিত্র বর্ণনা লিখুন


14
আমি আশা করি তারা এটি কোনও দিন ঠিক করে দেবে। এটি কখনই ঘটবে না ^^
itmuckel

1
সঠিক সমাধান হ'ল অ্যাপ্লিকেশনগুলির জন্য PATHপরিবেশের ভেরিয়েবলের অপব্যবহার বন্ধ করা । সঠিক সমাধানটি এখন প্রায় 2 দশক ধরে বিদ্যমান । তবে ডেভেলপারদের এটি ব্যবহার করা দাঁত টানার মতো।
ইয়ান বয়ড

উত্তর:


148

যখন PATH ভেরিয়েবলটি অনেক বেশি মান সহ ওভারলোড হয়ে যায় তখন এটি এমন এক পর্যায়ে পৌঁছায় যেখানে আপনি আর মান যুক্ত করতে পারবেন না। নিম্নলিখিত চেষ্টা করে আপনার সমস্যার সমাধান করা উচিত।

সমাধান 1:

  1. 'নতুনপথ' বলে একটি নতুন সিস্টেম ভেরিয়েবল তৈরি করুন
  2. 'নতুনপাথ' -তে বিন ডিরেক্টরি অবস্থান নির্ধারণ করুন
  3. এখন সংযোজন ' ; PATH ভেরিয়েবলের % NEWPATH% '

যদি এটি এখনও কাজ না করে তবে প্যাথ ভেরিয়েবলের কিছু অংশ ইতিমধ্যে বিদ্যমান মানগুলিকে 'NEWPATH' তে অনুলিপি করার চেষ্টা করুন এবং তারপরে 'NEWPATH' যুক্ত করুন

সমাধান 2:

আপনি পাথগুলি গ্রুপ এবং সংক্ষিপ্ত করতে পারলে PATH ভেরিয়েবলের মানটি পরীক্ষা করুন। উদাহরণ স্বরূপ,

সি: \ প্রোগ্রাম ফাইলসমূহ \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ ১০০ \ সরঞ্জামসমূহ \ বিন \; সি: \ প্রোগ্রাম ফাইলগুলি \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ ১০২ \ ডিটিএস \ বিন \;

একত্রিত হতে পারে

সি: \ প্রোগ্রাম ফাইলগুলি \ মাইক্রোসফ্ট এসকিউএল সার্ভার;

এইভাবে আপনি আপনার স্থির দৈর্ঘ্য PATH ভেরিয়েবলের মধ্যে আরও স্থান তৈরি করতে পারেন এবং অবশেষে আপনার বিন ডিরেক্টরি অবস্থানটি PATH এ সামঞ্জস্য করতে পারেন।

আশা করি এটি আপনাকে সাহায্য করবে!


হ্যাঁ আপনি খুব সঠিক। এত গবেষণা আমাকে দেখিয়েছিল যে পাথ ভেরিয়েবলটি কেবলমাত্র 2048 টি অক্ষর নিতে পারে এবং যখন অক্ষরগুলি এই পর্যায়ে পৌঁছে যায়, পাথ ভেরিয়েবলটি আর বেশি চরিত্র নিতে সক্ষম হবে না। সুতরাং আপনার পরামর্শ অনুসারে আমি চেষ্টা করেছি এবং আমি এখন ভাল আছি। আপনাকে ধন্যবাদ
ওলামি

ধন্যবাদ! এটি একটি দুর্দান্ত ধারণা @ সমাধান 1! এটা আমার নিজেই ভাবা উচিত ছিল ... :)
Dev-iL

2
এটি একটি মোহন মত কাজ করে, আপনাকে ধন্যবাদ! তবে, ব্যবহার করার সময় কাউকে সতর্কতা অবলম্বন করতে হবে setx PATHকারণ এটি সরাসরি সমাধান করবে %NEWPATH%এবং ফলস্বরূপ স্ট্রিংটি আরও একবার দীর্ঘ হবে ... সুতরাং, এই পদ্ধতির সাহায্যে, কেবলমাত্র কথোপকথনটি এবং কমান্ড লাইনটি ব্যবহার করা উচিত নয়
আইসফায়ার

1
@SwapnilKamat এটি সম্পূর্ণরূপে কাজ করে না: আমি miktex ব্যবহার করছি, তার pdflatexহতে রয়েছে PATHযদি আমি অবস্থান করা pdflatexমধ্যে NEWPATH, pdflatexএটা আর পাওয়া যায়নি এর ( "কমান্ড pdflatexস্বীকৃত নয়" ...)
Olorin

7
হাস্যকরভাবে, মাইক্রোসফ্ট এসকিউএল সার্ভার এতগুলি পাথ ভেরিয়েবল সেট করেছে যে এটি একা প্রায় স্থান পূরণ করে। আমি একটি PATHS_MSSQL ভেরিয়েবল তৈরি করেছি এবং তারপরে তাদের স্থানটি গ্রহণের জন্য PATH ভেরিয়েবলটিতে% PATHS_MSSQL% যুক্ত করেছি। PATH ভেরিয়েবলের প্রচুর জায়গা ছেড়ে দেয়।
স্টিভ লয়েড

49

আপনার পথ পরিবর্তনশীল পরিষ্কার করার কয়েকটি উপায় রয়েছে। সবচেয়ে সহজ হ'ল র‌্যাপিড এনভায়রনমেন্ট এডিটর ব্যবহার করা । এই নিখরচায় ইউটিলিটি,

  1. সদৃশ পথগুলি সরান (ডান ক্লিক করুন> ক্লিনআপ পাথ)
  2. অস্তিত্বহীন ফোল্ডারগুলি সরান (লাল বর্ণিত যা আপনাকে ম্যানুয়ালি মুছতে হবে)
  3. দীর্ঘ পাথগুলি ছোট পাথের সাথে প্রতিস্থাপন করুন (ডান ক্লিক করুন> দীর্ঘ থেকে ছোট পাথ)।

আমি ক্রমের উপরের পদক্ষেপগুলি করি এবং পাথ ভেরিয়েবলের আকারটি আবার নিয়ন্ত্রণ না হওয়া অবধি কেবল দীর্ঘতম পাথের জন্য তৃতীয় পদক্ষেপ ব্যবহার করি।

আপনি যদি আরও উন্নত হতে চান তবে এখানে একটি ছোট্ট সি # টি সরঞ্জাম রয়েছে যা আপনি প্রয়োগ করতে চান অন্য যে কোনও যুক্তিকে আপনি পরিবর্তন করতে পারেন।


এই পোস্টটি পড়ার আগে আমি কখনও কোনও সরঞ্জামের কথা শুনিনি তবে খুশি হলাম! ভাগ করে নেওয়ার জন্য ধন্যবাদ!
জেমস শ

2
এই সরঞ্জাম দুর্দান্ত! এমএসকে এটি অফিসিয়াল সম্পাদক করা উচিত যা উইন্ডো সহ আসে!
বুড়জুম

35

পরিবেশের PATH ভেরিয়েবল দৈর্ঘ্যের সীমাটি বাইপাস করার জন্য আরও একটি সমাধান বা আরও কার্যকর কাজ হ'ল PowerShellস্ক্রিপ্ট ব্যবহার করে আপনার পথ পরিচালনা করুন (যোগ করুন, অপসারণ বা আপডেট করুন) ;

  1. "পাঠ্য সম্পাদনা করুন" (উপরের স্ক্রিনশটটি) ক্লিক করে বর্তমান প্যাথএইচ ভেরিয়েবলটি ক্যাপচার করুন এবং খারাপ ক্লিপবোর্ডে এটি আপনার ক্লিপবোর্ডে অনুলিপি করুন এবং কোনও ব্যাকআপ হিসাবে এটি একটি টেক্সট ফাইলে সংরক্ষণ করুন bad এটি বাধ্যতামূলক নয় তবে কিছু ভুল হয়ে গেলে আপনাকে পুনরুদ্ধার করতে দেবে।

  2. এখন এটির ব্যাক আপ নেওয়া হয়েছে, নিম্নলিখিতটি একটি নতুন পাওয়ারশেল (.ps1) ফাইলে যুক্ত করুন (ফোল্ডার পাথ (গুলি) দিয়ে আপনি নীচের প্রথম লাইনটি সংশোধন করুন (+ চিহ্নের পরে অংশ):

    ; newPath = $ env: পথ + '; সি: \ ব্যবহারকারী .... \ FirstFolderToAddToPath; সি: \ ব্যবহারকারী .... \ SecondFolderToAddToPath; '

    [পরিবেশ] :: সেট-পরিবেশে পরিবর্তনশীল ("পথ", $ নতুনপথ, "মেশিন")

    v env: পথ = $ নতুনপথ

এইভাবে আমি উইন্ডোজ 10 ইউআইয়ের সাথে খেলার পরে আমার (দীর্ঘ) PATH পরিবর্তনশীলটি ফিরে পেতে পরিচালিত করেছি, দৈর্ঘ্যের সীমাবদ্ধতার কবলে পড়ে এবং আমার বেশিরভাগ পথটি হারিয়ে ফেলেছি। আমি আসা করি এটা সাহায্য করবে.


ধন্যবাদ .. এটা সহজ ছিল। 2 এবং 3 লাইনে নির্ধারিত মানের মধ্যে পার্থক্যটি কি কৌতূহল
নায়াক

লাইন 3 এটি বর্তমান সেশনে সেট করে, লাইন 2 এটিকে মেশিনের ডিফল্ট হিসাবে সেট করে।
তেটসুজন নো ওনি

2
দ্রষ্টব্য আর পথ কিন্তু ঐতিহ্যগত জন্য কাজ করে setx /m1048 অক্ষর থেকে কাটছাঁট করে :( এছাড়াও আপনি টেক্সট এডিটরে সম্পাদন করা পাথ করতে পারেন এবং মাত্র না। [Environment]::SetEnvironmentVariable("Path", '\my\new;path1', "Machine")আপনি অ্যাডমিন শেল করতে হবে।।
শীতল শাহ

এটি পিএস ব্যবহার করা সম্ভব তবে জিইউআই ব্যবহার করছে না। এইচএম, কীভাবে তা বোঝা যায়? উত্সাহিত, ধন্যবাদ!
কিংবদন্তি

10

স্বপ্নিলের উত্তর ছাড়াও, নোট করুন যে আপনি পাথ ভেরিয়েবলের সর্বাধিক দৈর্ঘ্যটি সংশোধন করতে পারবেন - যা অন্যথায় 2048 অক্ষরের মধ্যে সীমাবদ্ধ (অন্যদিকে একক পথে 206 অক্ষরের charactersতিহাসিক সীমা রয়েছে)। উইন্ডোজ 10-এ, আপনি LongPathsEnabledরেজিস্ট্রি কী 1 তে সেট করে এটি অর্জন করতে পারেন যা এখানে পাওয়া যাবে:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

রেজিস্ট্রি সম্পাদকটি অ্যাক্সেস করতে: Windows Key+Rটাইপ করুন Regedit

সূত্র: https://superuser.com/a/1119980

এই সুপার ইউজার উত্তরটি একবার দেখুন: https://superuser.com/a/1119980/327009

নীচের মন্তব্যে সম্বোধন করা: ত্রুটি "পরিবেশগত পরিবর্তনশীল খুব বড়" পুরো ভেরিয়েবলের সাথে সম্পর্কিত, বর্তমানে একক পাথ যুক্ত হচ্ছে না।


19
এই সঠিক পরামর্শ? PATH ভেরিয়েবলের সর্বাধিক দৈর্ঘ্য (অর্থাত্ একাধিক পাথের সংমিশ্রণ ) 2048 টি অক্ষর। আপনার উল্লেখ করা 260 টি অক্ষর হ'ল এক পথের সর্বাধিক দৈর্ঘ্য । তারা সম্পর্কিত কিন্তু একই নয়।
হেন্ডি ইরওয়ান

7

দেরীতে উত্তর কিন্তু আমি অনুরূপ কিছু খুঁজছিলাম এবং এখানে শেষ হয়েছে। আমি প্রোগ্রাম ফাইল এবং প্রোগ্রামডেটার জন্য সমস্ত পাথ পরিবর্তনকগুলিতে পরিবর্তন করেছি (এটি গুরুত্বপূর্ণ হিসাবে গুরুত্বপূর্ণ না হলেও এটি 1 টি চরিত্রের মতো সংরক্ষণ করে)।

নোডেজের মতো কোনও কিছুর জন্য আমি এর স্বাভাবিক পথ পরিবর্তন করেছি

সি: \ প্রোগ্রাম ফাইল \ নোডেজ \

প্রতি

% Programfiles% \ nodejs \

এটি "সি: \ প্রোগ্রাম ফাইল (x86) \" এর পাশাপাশি "% প্রোগ্রাম ফাইল (x86)% using" ব্যবহার করেও করা যেতে পারে

এটি আমার কয়েকটি চরিত্র সংরক্ষণ করেছে তবে এটি অনুভব করা আমার অভিযোগ করা বন্ধ করে দিয়েছে।


7
কেন "সি: \ প্রোগ্রাম ফাইলগুলি (x86)" প্রতিস্থাপন করতে% x86% এবং "সি: to প্রোগ্রাম ফাইলগুলি" প্রতিস্থাপন করার জন্য% x x% ব্যবহার করবেন না, মনে হচ্ছে চরিত্রের ওভারহেড হ্রাস করার জন্য এটি আরও ভাল উপায়।
Xorist

1
@ জোড়বাদী - খুব সুন্দর! সেগুলি সম্পর্কে কোনও ধারণা ছিল না
মার্ক 1234

এগুলি ডিফল্টরূপে বিদ্যমান বলে আমি মনে করি না তবে আপনি এগুলি নিজে তৈরি করতে পারেন।
গ্যাব্রিয়েল ফেয়ার

আমি এটিও করেছি, আমি "সি: \ প্রোগ্রাম ফাইলেস" এর জন্য% পিএফ% তৈরি করেছি এবং প্রায় 20 বার এটি ব্যবহার করার ফলে আমাকে পর্যাপ্ত পথটি ছোট করার অনুমতি দিয়েছে allowed
লাব্রাকা

@ জর্জিস্ট কীভাবে এটি অন্য ভেরিয়েবল তৈরি করে করা হয়?
ডেমোডাভ

5

আমি পেয়েছি আপনি পাওয়ারশেলের মাধ্যমে করতে পারেন।

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

সুতরাং আমি বিদ্যমান সিস্টেমটি PATH ধরলাম, নোটপ্যাডে আটকানো হয়েছে, আমার নতুন জিনিস যুক্ত করেছি, তারপরে উপরের "সি: \ প্রোগ্রাম ফাইলগুলি" তে আটকানো হয়েছে। পাথ আপডেট হয়েছে। সম্পন্ন.


4

সংশোধন করে দেখুন regedit, আমার ক্ষেত্রে এটি 3000 এর বেশি দৈর্ঘ্যের হয়ে কাজ করে।

রিজেডিট খুলতে টিপুন Win + Rএবং প্রবেশ regeditকরুন। যান Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environmentএবং Pathআপনার পথে মূল্য পরিবর্তন করুন । এবং কম্পিউটার পুনরায় চালু করুন, এটি কাজ করা উচিত।


1
এটি আমার জন্য ভাল কাজ করা হয়। আমি মনে করি এটি অন্যান্য পদ্ধতির তুলনায় সহজ।
শালিতা সননায়ক

1

কার্যসংক্রান্ত:

দয়া করে সিস্টেমটি পুনরায় চালু করুন। সিস্টেমটি পুনরায় আরম্ভ করার পরে, PATH আর খালি থাকবে না, তবে সিস্টেমটি পুনরায় চালু করতে দয়া করে সহায়তা না করে থাকলে 2047 (4095) টি অক্ষরে ছাঁটা যেতে পারে:

সি চালু করুন: \ উইন্ডোজ \ system32 \ regedit.exe রেজিস্ট্রি হাইভ "HKLM Y SYSTEM \ কারেন্ট কন্ট্রোলসেট \ নিয়ন্ত্রণ \ সেশন ম্যানেজার \ পরিবেশ" "পথ" কী থেকে অপ্রয়োজনীয় ডিরেক্টরিগুলি পরিষ্কার করুন সিস্টেম পুনরায় চালু করুন

দ্রষ্টব্য: কিছু ব্যতিক্রমী ক্ষেত্রে যদি সিস্টেমটি শুরু করতে সক্ষম না হয় তবে দয়া করে:

নিরাপদ মোডে লগইন করুন কমান্ড প্রম্পট শেলটি খুলুন এবং টাইপ করুন: "HKLM \ SYSTEM \ বর্তমানকন্ট্রোলসেট \ নিয়ন্ত্রণ \ সেশন ম্যানেজার \ পরিবেশ" / v পথ / t REG_EXPAND_SZ / d ^% সিস্টেমরুট ^% \ system32; ^% সিস্টেমরুট ^% / এফ

আরও তথ্যের জন্য: https://software.intel.com/en-us/articles/limitation-to-the-leth-of-the-sstm-path-variable


কমপক্ষে কীভাবে সীমা বাড়ানো যায় 4095?
ড্যান এম

1

অন্যান্য পদ্ধতির পাশাপাশি (যেমন পাওয়ারশেল), আমি একটি দুর্দান্ত জিইউআই পেয়েছি, "র‌্যাপিড এনভায়রনমেন্ট এডিটর" যা বৃহত্তর পাঠ্য মানগুলি পরিচালনা করতে পারে।

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


0

স্পষ্টতই র‌্যাপিড এনভায়রনমেন্ট এডিটর আপনার জন্য এটি করবেন (@ শৈতাল_শাহ উত্তর থেকে) তবে আপনি তাদের "8 ডট 3" সংস্করণে পাথগুলিও সংক্ষিপ্ত করতে পারেন। এই দুটি প্রতিস্থাপনের মাধ্যমে আপনি প্রচুর মাইলেজ পাবেন:

C:\Program Files       --> C:\PROGRA~1
C:\Program Files (x86) --> C:\PROGRA~2

যদি আপনি আপনার বর্তমান পাথটি নোটপ্যাডে অনুলিপি করেন তবে প্রথমে অনুসন্ধান করুন এবং প্রতিস্থাপন করুন C:\Program Files (x86)এবং তারপরে C:\Progam Files


-3

Workarround। সম্পাদনা পাঠ্য ব্যবহার করুন এবং পাঠ্য সম্পাদকে আপনার পাঠ্য সম্পাদনা করুন


2
আমি আপনার পরামর্শ অনুসরণ করার চেষ্টা করছি। আমার কম্পিউটারে কোন ফাইলটি পরিবেশগত পরিবর্তনশীল রয়েছে?
গ্যাব্রিয়েল ফেয়ার

এটা ঠিক পাঠ্য। নোটপ্যাড ব্যবহার করে এটি খুলুন
ক্রিস্টোফ অ্যাডামাকিস

@ গ্যাব্রিয়েলফায়ার আপনাকে Edit Textকিছু ফাইল খোলার পরিবর্তে ডাকা বোতামটি ক্লিক করতে হবে।
অ্যালেক্সমেলউ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.