ম্যাক ওএস এক্স: প্রচলিত জায়গা যেখানে বাইনারি ফাইলগুলি বাস করা উচিত


61

আমি একটি অ্যাপ্লিকেশন ডাউনলোড করেছি যা একটি কমান্ড-লাইন অ্যাপ্লিকেশন, এবং এটি এমন কোনও জায়গায় রাখতে চাই যেখানে আমি এটি স্পষ্টভাবে পাথ টাইপ না করে কমান্ড-লাইন থেকে চালাতে পারি।

  1. এই জাতীয় কিছুর জন্য ব্যবহৃত প্রচলিত পথগুলি কী কী? /usr/bin? বিভিন্ন বিকল্প আছে, আমি যদি এটি সমস্ত ব্যবহারকারীর জন্য চাই এবং একটি যদি আমি এটি কেবলমাত্র একটি নির্দিষ্ট ব্যবহারকারীর জন্য চাই, যেমন প্রশাসক অ্যাকাউন্ট?

  2. বা আমি কি এটিকে অ্যাপ্লিকেশন ডিরেক্টরিতে নিজের ডিরেক্টরিতে রেখে এটিকে পথটিতে যুক্ত করব? যদি তাই হয় তবে কোন ফাইলটি যেখানে পাথ সেট করা আছে তা নিয়ন্ত্রণ করে?

উত্তর:


53

মূল উত্তর: আপনি সম্ভবত চান /usr/local/bin। আপনার ম্যাকোসটি কীভাবে সাম্প্রতিক তা নির্ভর করে আপনাকে আপনার ডিফল্ট আপডেট করতে হবে $PATH। আরও তথ্যের জন্য নীচে দেখুন।

আপডেট 12-01-2018 যেহেতু আমি আমার আসল উত্তরটি লিখেছি, এক পর্যায়ে অ্যাপল তার ডিফল্ট পরিবর্তন করেছে $PATH। ফলস্বরূপ, আমি নীচে যা বলেছি তা প্রচুর সাম্প্রতিক ম্যাকের সাথে অপ্রাসঙ্গিক। আপনি যদি echo $PATHকোনও টার্মিনাল টাইপ করেন এবং /usr/local/binপ্রথমে হন তবে আপনি নিজের পরিবর্তন সম্পর্কে নীচের সমস্ত কিছু উপেক্ষা করতে পারেন $PATH

আসল উত্তর

ম্যাকগুলি এক্ষেত্রে অস্বাভাবিক। $PATHনিয়মিত ব্যবহারকারীর জন্য ডিফল্ট পরিবর্তনশীলটি দেখতে এরকম দেখাচ্ছে:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

নির্বাণ দ্বারা /usr/local/bin পর /usr/bin এবং /bin, ম্যাক চলিত সিস্টেম upends। সাধারণত, আপনি কিছুতে রাখতে পারেন /usr/local/bin(একটি দ্বিতীয় পার্ল ইন্টারপ্রেটার বলুন, কিছু মানহীন উপায়ে সংকলিত) এবং তারপরে নিয়মিত ব্যবহারকারী প্রথমে সিস্টেম-ওয়াইডের পরিবর্তে কাস্টমটিকে আঘাত করবে। এটা ভাল. ব্যবহারকারীরা ভেরিয়েন্টগুলি পেতে পারেন তবে সিস্টেমটি বিশুদ্ধ থাকে। অ্যাপলের ডিফল্ট দেওয়া আছে $PATH, তবে আইটেমগুলিতে /usr/binবা এর /binআগে কিছু পাওয়া যাবে /usr/local/bin। (এটি মূলত ইনস্টলের উদ্দেশ্যকে হারাতে পারে, যেমন কাস্টম পার্ল ইন /usr/local/bin)

এটি ঠিক করার জন্য, আপনি ব্যবহারকারীর হোম ডিরেক্টরিতে ফাইল $PATHসম্পাদনা করে নিয়মিত ব্যবহারকারীর পরিবর্তন করতে পারেন .profile। (যদি আপনার কাছে একেবারে নতুন ইনস্টল থাকে তবে এই ফাইলটির অস্তিত্ব থাকতে পারে that সেক্ষেত্রে এটি তৈরি করুন))

আধা সম্পর্কিত: হোমব্রু ম্যাক্সের জন্য দুর্দান্ত প্যাকেজ পরিচালনা সরবরাহ করে। ডিফল্টরূপে, হোমব্র্যু এতে সফ্টওয়্যার ইনস্টল /usr/localকরে তবে এটি এমনভাবে করে যাতে জিনিসগুলি সরানো এবং পরে ভ্যানিলা অবস্থায় ফিরে আসা খুব সহজ হয়ে যায়।


1
আমার সদ্য ইনস্টল করা ওএসএক্স 10.13.6 (হাই সিয়েরা) এ, পাথটিতে প্রথমে ডিফল্টরূপে (ইউএসআর / লোকাল / বিন থাকে (যদিও ফোল্ডারটি উপস্থিত নাও থাকে) থাকে।
লেগোলাস

1
@ লেগোলাস অ্যাপল প্রদর্শিত হয় যে তারা কীভাবে এটি পরিচালনা করে changed আমি পোস্টটি সম্পাদনা করব।
টেলিমাচাস

9

/usr/local/binএবং /usr/local/sbinআপনার পথে যুক্ত করার উপযুক্ত, কারণ উত্স তৈরির জন্য অনেকগুলি মেকফিলগুলি সেখানে ইনস্টল করার জন্য ডিফল্ট হয়।

আপনি যদি ম্যাকপোর্টগুলি ব্যবহার করেন তবে এটি যুক্ত করার মতো /opt/local/binএবং /opt/local/sbinপাশাপাশি।

এটি করার সর্বোত্তম উপায় হ'ল যুক্ত করা

export PATH=/usr/local/bin:/usr/local/sbin:/opt/local/bin:/opt/local/sbin:$PATH

থেকে .bashrcআপনার হোম ডিরেক্টরীতে ফাইল (যা লুকানো আছে, CLI তাই সবচেয়ে ভালো উপায় এই কাজ করতে হয়), অথবা, আপনি সিস্টেম প্রশস্ত পথ পরিবর্তন করতে চান তাহলে, এর একই লাইনে যোগ /etc/bashrc(লুকানো না), কিন্তু আপনি হবে এটি করা প্রয়োজন sudo

আপনার যদি .bashrcকোনও ব্যবহারকারীর বাড়িতে না থাকে তবে আপনি একটি তৈরি করতে এবং এটিতে এই লাইনটি যুক্ত করতে পারেন, তবে ব্যবহারকারীকে প্রশ্নে পাঠযোগ্য করার জন্য আপনি যে ফাইলটি তৈরি করেছেন সেটির অনুমতিগুলি পরিবর্তন করতে ভুলবেন না (আপনি অবশ্যই 'প্রাসঙ্গিক না হলে' এটি আপনার নিজের প্রোফাইলের জন্য আবার করছেন)।

$PATHশেষে যাই হোক না কেন আপনি আগে লাগাতে সিস্টেম ডিফল্ট পাথ appends। নোট করুন যে সিস্টেমটি প্রদত্ত পাথগুলির ক্রম অনুসারে বাইনারিগুলির সন্ধান করে, সুতরাং আপনি যদি বাইনারি ইনস্টল করেন /usr/localবা /opt/localএটি সিস্টেমে ডিফল্টরূপে ইনস্টল করা হয় তবে আপনার ইনস্টল করা সংস্করণগুলি প্রথম পাওয়া যাবে যা (যদিও খুব কমই) বিপর্যস্ত জিনিসগুলিকে করতে পারে। এটি দেখার জন্য মূল্যবান।

ভাল তথ্য এখানে

আমার লক্ষ্য করা উচিত যে উপরেরটি ধরে নেওয়া হয়েছে যে আপনি শেলের জন্য বাশ ব্যবহার করছেন যা ম্যাক ওএস এক্স ভি 10.4 (টাইগার) এবং ম্যাক ওএস এক্স ভি 10.5 (চিতাবাঘ) এ ডিফল্ট , তবে আগের সিস্টেমে নয়, tcshপরিবর্তে ব্যবহৃত হয়েছে , যার আলাদা সিনট্যাক্স রয়েছে।

আমি আশা করি এটি সাহায্য করবে...


1
/usr/local/binইতিমধ্যে একটি ডিফল্ট ওএস এক্সে রয়েছে $PATH(যদিও দেরিতে - আমার উত্তর দেখুন)। আপনি যদি ম্যাকপোর্টস ব্যবহার করেন তবে এর ইনস্টলারটির আপনার প্রয়োজন অনুসারে পাথ সম্পাদনা করা উচিত - কমপক্ষে এটি সর্বদা আমার অভিজ্ঞতাতে থাকে। এটি বলেছিল, ব্যবহারকারীরা এটি কী করছে (এবং কেন) তা জেনে রাখা ভাল।
টেলিমাচাস

ভালভাবে চিহ্নিত @ টেলিম্যাচাস: যখনই আমি নিজের জন্য ম্যাক তৈরি করি, আমি প্রথমে নরকে প্রথম জিনিসটি কাস্টমাইজ করি, তাই আমি কী কখনও স্ট্যান্ডার্ড এবং আমার কী তা মনে করতে পারি না!
এস্ট্রেল্লেন

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

"যা লুকানো আছে, তাই সিএলআই হ'ল এটি করার সর্বোত্তম উপায়": বোবা প্রশ্ন, আপনি কীভাবে কমান্ড প্রম্পট থেকে কোনও ফাইলের পাঠ্য সম্পাদনা চালাবেন?
জেসন এস

বোবা প্রশ্নের মতো কোনও বিষয় নেই: openফাইলের নাম সহ একটি আর্গুমেন্ট হিসাবে কমান্ডটি ব্যবহার করুন এবং এটি ডিফল্ট পাঠ্য সম্পাদক (মান হিসাবে টেক্সটএডিট) হিসাবে সেট করা আছে যা দিয়ে খুলতে হবে।
এস্ট্রেল্লেন

7

আমি সাথে যেতে ঝোঁক /usr/local। এখানে একটি দুর্দান্ত ব্যাখ্যা কেন , যা ফাইলসাইম হায়ারার্কি স্ট্যান্ডার্ড (এফএইচএস) বোঝায় ⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢⁢ পালা সম্পর্কে বলেছেন /usr/local:

স্থানীয় ডেটাগুলির জন্য তৃতীয় স্তরক্রম, এই হোস্টের জন্য নির্দিষ্ট। সাধারণত আরও সাব-ডাইরেক্টরি থাকে যেমন, বিন, লিব, শেয়ার ⁢


হ্যাঁ, এটি অন্যান্য * নিক্স অপারেটিং সিস্টেমের ক্ষেত্রে অনেকটা একই।
jtbandes

2
রেফারেন্স লিঙ্ক (গুলি) থেকে উত্তরের প্রয়োজনীয় অংশগুলি উদ্ধৃত করুন, কারণ লিঙ্কযুক্ত পৃষ্ঠা (গুলি) পরিবর্তন হলে উত্তরটি অবৈধ হতে পারে।
ডেভিডপস্টিল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.