কমান্ড লাইন অ্যাপ্লিকেশনগুলি আমার কোথায় রাখা উচিত?


46

আমি যখন কমান্ড লাইন অ্যাপ্লিকেশনগুলি ডাউনলোড করি তারা আমার ~/Downloads/ডিরেক্টরিতে অবস্থিত । তবে আমি মনে করি একটি কমান্ড লাইন অ্যাপ্লিকেশন অবস্থিত করার জন্য এটি ভুল জায়গা। ম্যাক ওএস এক্স ফাইল সিস্টেমে কমান্ড লাইন অ্যাপ্লিকেশনগুলি কোথায় সঞ্চয় করা উচিত?

/Applications/ভুলও বোধ করে, ডেস্কটপ অ্যাপ্লিকেশনগুলির জন্য এটি আরও বেশি। আর /bin/অ্যাপ্লিকেশন OS X এর জন্যে জন্য শব্দসমূহ আরও


আমি আপনার অনুভূতির সাথে একমত যে জিনিসগুলিকে সরাসরি / বিন বা / অ্যাপ্লিকেশনগুলিতে স্থাপন করা সাধারণত দুর্বল রূপ। প্যাট্রিক্সের উত্তর হ'ল প্রোগ্রাম এবং স্ক্রিপ্টগুলির সাধারণ কমান্ড লাইন সঞ্চয় করার জন্য আমি সর্বাধিক আধ্যাত্মিক অবস্থান দেখেছি।
bmike


2
লিঙ্কযুক্ত প্রশ্নটি বেশ কয়েকটি তৃতীয় পক্ষের পছন্দগুলি জাগ্রত করা সম্পর্কে আরও বেশি মনে হওয়ায় এটিগুলিকে আমি নকল হিসাবে দেখছি না এবং এটি আরও খাঁটি - আমার ম্যানুয়ালি ডাউনলোড করা অ্যাপগুলি কোথায় যায়।
bmike

উত্তর:


44

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

sudo mkdir -p /usr/local/bin

আপনি চালিয়ে কোনও ফোল্ডারে কোনও কমান্ড লাইন অ্যাপ্লিকেশন স্থানান্তর করতে পারেন:

sudo mv my-binary /usr/local/bin/

/usr/local/binএটি টার্মিনালে আপনার স্ট্যান্ডার্ড অনুসন্ধানের পথের অংশ কিনা তা নিশ্চিত করতে , সামগ্রীটি পরীক্ষা করে দেখুন /etc/pathsএবং প্রয়োজনে এটি যুক্ত করুন:

grep -w /usr/local/bin /etc/paths || sudo sh -c 'echo /usr/local/bin >> /etc/paths'

কিছু ব্যবহারকারী ব্যবহারকারী স্তরের স্ক্রিপ্টগুলির জন্য একটি দ্বিতীয় ডিরেক্টরি তৈরি করে তবে এটি ব্যক্তিগত পছন্দকে আরও বেশি বিষয়।

আমি প্রতিটি ব্যবহারকারীর ফোল্ডারে সাধারণত একটি বিন ডিরেক্টরি তৈরি করি এবং তারপরে এটি ফাইন্ডার থেকে লুকিয়ে রাখি - তবে আপনি নিজে সিদ্ধান্ত নিতে পারেন আপনি এটি লুকিয়ে রাখতে চান কিনা:

 mkdir ~/bin
 chflags hidden ~/bin

এই ক্ষেত্রে, আপনি প্রতিটি ব্যবহারকারীর শেল শুরুর স্ক্রিপ্টগুলিকে সংশোধন করে এই অবস্থানটি অন্তর্ভুক্ত করতে চান ( ~/.bash_profileস্ট্যান্ডার্ড শেল যা বাশের জন্য)

 export PATH=$PATH:~/bin

বা আপনি যখন প্রতিটি অ্যাপ্লিকেশন চালনা করেন তখন কঠোরভাবে কোডিং করে।


3
এটি নিখুঁতভাবে সেরা পরামর্শ, এবং যেটি আমি জিজ্ঞাসা করি তাকে আমি এটি দেব। আমি কেবল 2 টি জিনিস যুক্ত করব: 1) /etc/launchd.conf এমন একটি জায়গাও হতে পারে যেখানে পাথটি যুক্ত করা দরকার, ২) যদিও আমি homebrewনিজের শেল স্ক্রিপ্টগুলির জন্য ইউনিক্সের জন্য ইনস্টল করা / ইউএসআর / স্থানীয় / ব্যবহার করি I একটি ~ / ড্রপবক্স / বিন / যা আমি আমার AT PATH এ যুক্ত করেছি যাতে আমার সমস্ত ম্যাকগুলিতে আমার সমস্ত কাস্টম শেল স্ক্রিপ্ট রয়েছে। তবে আমি এটির পরিবর্তে / usr / স্থানীয় / বিন / ছাড়াও তা করি।
টিজে Luoma

, / usr / স্থানীয় / বিন হয় একটি ব্যবহারকারীর স্ক্রিপ্টের জন্য ঐতিহ্যগত ইউনিক্স স্পট, যা সিস্টেমে অন্য যেকোনো ব্যবহারকারীর কাছে অ্যাক্সেস দেয়। স্ক্রিপ্টগুলি সেখানে রাখলে সমস্ত ব্যবহারকারীর $ PATH অনায়াসে স্ক্রিপ্টগুলি রাখা হবে। তবে আমি বিশ্বাস করি যে ম্যাক উপায়টি, যেহেতু বেশিরভাগ ম্যাকেরই একক ব্যবহারকারী থাকে তাই একটি ডিরেক্টরি তৈরি করা হয় , এটি দিয়ে অদৃশ্য করা হয় এবং এটি ব্যবহারকারীদের $ পথের অংশ হিসাবে এটি ব্যবহারকারীদের সাথে যুক্ত করা হয়। সুরক্ষা এবং মাইগ্রেশনের জন্য একটি উচ্চতর অবস্থান। অন্যথায়, আপনি / ইউএসআর / স্থানীয় / বিনে রেখে যাওয়া জিনিসগুলি সম্পর্কে আপনাকে মনে রাখতে হবে। এবং খুব সুন্দর। ~/binchflags uchg ~/bin~/.bash_profile~/binln -s ~/bin ~/Dropbox/
চিলিন

7

একটি /optডিরেক্টরি তৈরি করার বিষয়টি বিবেচনা করুন , এটি অন্য কোনও স্থান যা কাস্টম ইউনিক্স সফ্টওয়্যারটি কনভেনশন দ্বারা প্রদর্শিত হবে।


5
/opt/সম্পূর্ণ অ্যাপ্লিকেশনগুলির জন্য খুব দরকারী যেখানে /usr/local/bin/স্বতন্ত্র কমান্ড লাইন স্ক্রিপ্টগুলির জন্য আরও উপযুক্ত। /opt/সম্পর্কিত স্ক্রিপ্টগুলির সংগ্রহটি একটি গ্রন্থাগার হিসাবে কাজ করে এমন উদাহরণগুলিতে ব্যবহার করা প্রায়শই ভাল (যেমন, /opt/myscriptslib/bin/)।
plasmid87

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