PATH এ কেন এতগুলি প্রোগ্রাম লাইভ থাকে?


10

একটি জিনিস যা আমাকে ডেস্কটপ লিনাক্স সম্পর্কে ধাঁধা দেয় তা হ'ল প্রায় আমার প্যাথের মধ্যে। সবকিছুর দ্বারা, আমি জিনোম-চরিত্র-মানচিত্র এবং গ্লাচেসের মতো জিনিসগুলি সহ প্রতিটি ডেস্কটপ অ্যাপ্লিকেশনকে বোঝাতে চাইছি। এগুলির কথা বলার জন্য কোনও কমান্ড লাইন ইন্টারফেস নেই, তাই আমি এমন কোনও ক্ষেত্রে ভাবতে পারি না যেখানে আমি নিয়মিত টার্মিনাল থেকে এগুলি চালু করব - এবং এই অসম্ভব ক্ষেত্রে, আমি তাদের সম্পূর্ণ টাইপ করার প্রয়োজনে অসুবিধে হওয়ার কথা ভাবতে পারি না full পাথ। এটিকে কেবল বিশৃঙ্খলা বলে মনে হচ্ছে, তবে এটির একটি ভাল কারণ থাকতে পারে।

সুতরাং, কেন নেই এই ঘটতে? কর্মক্ষমতা বা রক্ষণাবেক্ষণের উপর কোনও উল্লেখযোগ্য প্রভাব আছে?

উত্তর:


14

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

পুরো পাথটি টাইপ করার দরকার হবে ভয়ঙ্কর: আপনার পুরো পথটি কী তা খুঁজে বার করা দরকার! এটির মধ্যে /usr/bin(যা অপারেটিং সিস্টেমের সাথে প্রেরণ করা বেশিরভাগ প্রোগ্রাম রয়েছে), বা /usr/local/binএতে (যা প্রশাসকের দ্বারা ম্যানুয়ালি ইনস্টল করা প্রোগ্রাম রয়েছে সেইসাথে কিছু প্রোগ্রামের মূল ওএসের অংশ নয় এমন প্রোগ্রাম রয়েছে ) তা আপনার নজর রাখা দরকার keep ইউনিক্স রূপগুলি), বা অন্য কোনও সিস্টেম-নির্দিষ্ট ডিরেক্টরিতে, বা কোথাও ব্যবহারকারীর হোম ডিরেক্টরিতে।

"কর্মক্ষমতা বা রক্ষণাবেক্ষণের উপর প্রভাব" সম্পর্কে উত্তর দেওয়া কঠিন কারণ আপনি এটির তুলনা করছেন বলে আপনি তা বলছেন না। যদি আপনি সর্বত্র পুরো পথটি টাইপ করার সাথে তুলনা করে থাকেন তবে এটি রক্ষণাবেক্ষণের জন্য একটি দুঃস্বপ্ন: যদি আপনি কখনও কোনও প্রোগ্রাম স্থানান্তর করেন বা আপনি যদি OS এর সাথে এসেছিলেন বা সিস্টেম প্রশাসক দ্বারা ইনস্টল করা হয়েছে তার চেয়েও নতুন সংস্করণ ইনস্টল করতে চান, আপনাকে সর্বত্র সেই পুরো পথটি প্রতিস্থাপন করতে হবে। কয়েকটি ডিরেক্টরিতে নাম দেখার পারফরম্যান্সের প্রভাব নগণ্য।

আপনি যদি উইন্ডোজের সাথে তুলনা করেন তবে এটি আরও খারাপ: কিছু প্রোগ্রাম কেবল মৃত্যুদণ্ডপ্রাপ্তকেই নয়, তবে PATH তে সমস্ত ধরণের বাজেও যোগ করে এবং আপনি একটি মাইল দীর্ঘ PATHভেরিয়েবলের সাথে সমাপ্ত হন যা এখনও সমস্ত প্রোগ্রামকে অন্তর্ভুক্ত করে না, কারণ আপনি যখন ইনস্টল করেন তখন অনেকগুলি প্রোগ্রাম PATH এ নিজেকে যুক্ত করে না।


এটি দেখতে বেশ যুক্তিসঙ্গত যুক্তিযুক্ত দেখাচ্ছে। ব্যাখ্যা করার জন্য আপনাকে ধন্যবাদ! একটি প্রোগ্রাম প্রতিস্থাপন সম্পর্কে বিট অনেক বোঝার তৈরি করে। আমি সে সম্পর্কে একেবারেই চিন্তাও করি নি :) যে অংশটি আমাকে সম্পর্কে আঘাত করে তা হ'ল আমি যখন প্রোগ্রামিংয়ের বিষয়ে চিন্তা করি তখন আমি ছোট এবং বর্ণনামূলক নেমস্পেস রাখতে চাই, যখন এখানে সমস্ত কিছু একই গ্লোবাল নেমস্পেসে থাকে (এবং যখন আমরা করি পুরো পাথগুলি দেখুন, * / বিনের মতো বেশিরভাগ ননডেস্ক্রিপ্ট জায়গায়। আমি অনুমান করি যে তারা এগুলি বেশ আলাদা জিনিস।
ডিলান ম্যাককাল

4

PATH ভেরিয়েবলের ডিরেক্টরি পাথের একটি তালিকা রয়েছে। যখন পূর্ণ পথ সরবরাহ না করে ব্যবহারকারী কোনও কমান্ড টাইপ করে, কমান্ডের দিকে নিয়ে যাওয়া কোনও পথ রয়েছে কিনা এই তালিকাটি পরীক্ষা করা হয়। এটি সম্পর্কে স্বভাবগতভাবে টার্মিনাল বা কমান্ড-লাইন নির্দিষ্ট কিছুই নেই।

তাছাড়া এটি সম্পর্কে ডেস্কটপ লিনাক্স নির্দিষ্ট কিছু নেই। আমার এক্সপি সিস্টেমের পাঠ্যপথায়% সিস্টেমরুট% \ সিস্টেম 32;% সিস্টেমরুট%;% সিস্টেমরুট% \ সিস্টেম32 \ ওয়েবে রয়েছে যা সম্ভবত উইন্ডোজের বেশিরভাগ বাইনারিগুলি অন্তর্ভুক্ত করে।

PATH- র ডিরেক্টরিগুলি নির্দিষ্ট ক্রমে অনুসন্ধান করা হয় এবং ম্যাচটি পাওয়া মাত্রই বন্ধ হয়ে যায়। সিস্টেম ডিরেক্টরিগুলি তাদের শুরুতে সর্বোচ্চ অগ্রাধিকার দেয় usually ব্যবহারকারীদের শেষে কাস্টম অনুসন্ধানের পাথ যুক্ত করা উচিত।

পারফরম্যান্স হিসাবে: বেশিরভাগ আধুনিক শেলগুলি PATH এর বিষয়বস্তুগুলিকে ক্যাশে করে যাতে ব্যবহারকারীরা যতক্ষণ কোনও কমান্ড প্রবেশ করে ততবারই তাদের ডিস্ক স্ক্যান করতে হবে না।


উইন্ডোজ PATH উইন্ডোজ দিয়ে যে বাইনারিগুলি প্রবাহিত করে তার বেশিরভাগটি কভার করে তবে আপনি যে সাধারণ অ্যাপ্লিকেশন ইনস্টল করেন তা সাধারণত PATH তে পাওয়া যায় না। (ঠিক আছে, একটি কমান্ড-লাইন
উপাদানযুক্ত অ্যাপ্লিকেশনগুলি তাদের পাঠের পথে

দুর্দান্ত, আমি সর্বদা অর্ডার এবং এর তাত্পর্য নিয়ে চিন্তা করেছিলাম। কিভাবে থাম্ব একটি নিয়ম সম্পর্কে? আমি (প্রায়) প্রতিটি সমন্বয় আছে usr, local, bin, এবং sbin(আমার ব্যবহারকারী হোম ডায়রেক্টরিতে বাদে)।
ইমানুয়েল বার্গ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.