ওএস এক্স - একটি ব্যক্তিগত বিন ডিরেক্টরি (~ / বিন) তৈরি করুন এবং স্ক্রিপ্টগুলি সম্পূর্ণ পথ নির্দিষ্ট না করে চালান


19

সুতরাং, আমি যা করার চেষ্টা করছি তা হ'ল binআমার হোম ফোল্ডারে একটি ব্যক্তিগত ডিরেক্টরি তৈরি করা । আমি নিম্নলিখিত ফোল্ডারটি তৈরি করেছি:

/Users/thi/bin

আমি এই ফোল্ডারে আমার স্ক্রিপ্টগুলি রেখেছি, তবে আমি যদি টার্মিনালে টাইপ করি:

myScript

এটি চালায় না।

আমাকে জানানো হয়েছিল আমাকে এই বিন পথটি রফতানি করতে হবে echo $PATH, সম্পর্কিত কিছু , তবে আমি কীভাবে এটি করব তা জানি না।


উত্তর:


20

ফাইল করার জন্য আপনাকে নিম্নলিখিতগুলি যুক্ত করতে হবে ~/.profile:

export PATH=/Users/thi/bin:$PATH

তারপর source ~/.profile

দ্রষ্টব্য, আপনার এই ফাইলটি তৈরি করার প্রয়োজন হতে পারে এবং এটি একটি শুরু হওয়ার কারণে এটি .কোনও পাঠ্য সম্পাদকের মতো অ্যাপ্লিকেশনটির মাধ্যমে সম্পাদনার জন্য ফাইন্ডারে দৃশ্যমান নাও হতে পারে। লুকানো ফাইলগুলি সহ সমস্ত ফাইলের তালিকা করতে, ব্যবহার করুন:

ls -la ~/

আমি যদি আমার .Bashrc ফাইলে PATH = / ব্যবহারকারী / থি / বিন: AT পাথ যোগ করি তবে এটি কি কাজ করবে? এটা কি ঠিক?
থি জি

12
$HOME/binপরিবর্তে ভাল ব্যবহার /Users/thi/bin। এরপরে আপনি নিজের সেটিংস অন্য মেশিনে অনুলিপি করতে সক্ষম হবেন, যেখানে আপনার ব্যবহারকারীর নাম সম্ভবত আলাদা।
lhf

যদি আমি টার্মিনালে টাইপ করি: PATH = OME হোম / বিন: AT PATH এবং তারপরে টাইপ করুন: PATH রফতানি করুন। এটা কি কৌতুক করবে?
থি জি

1
যদি আপনি এটি করেন তবে এটি এখন সেটিংস পরিবর্তন করবে, তবে ভবিষ্যতের বুটগুলিতে নয়। রিবুটগুলি থেকে বেঁচে থাকার পথে পথটি পরিবর্তন করতে আপনাকে সেই .profileফাইলগুলি কমান্ডগুলি আপনার ফাইলে অন্তর্ভুক্ত করতে হবে।
ড্যানিয়েল

1
দুর্দান্ত, উত্তরের জন্য আপনাকে সকলকে ধন্যবাদ। আমি যোগ export PATH=$HOME/bin:$PATHআমার কাছে $HOME/.bash_profile
থি জি

10

আপনি যদি ব্যাশ ব্যবহার করেন তবে এর মতো একটি লাইন যুক্ত করুন ~/.bash_profile:

PATH=~/bin:$PATH

PATHডিফল্টরূপে রফতানির জন্য চিহ্নিত করা হয়, সুতরাং আপনার ব্যবহারের দরকার নেই export

যদি উভয়ই থাকে ~/.bash_profileএবং ~/.profileউপস্থিত থাকে তবে ব্যাশ কেবল ~/.bash_profileতখনই পড়তে হয় যখন এটি একটি ইন্টারেক্টিভ লগইন শেল হিসাবে ডাকা হয়। ~/.profileঅন্যান্য শেলগুলিও ব্যবহার করে যা বাশের মতো একই কনফিগারেশন বিকল্পগুলি বুঝতে পারে না।

টার্মিনাল এবং আইটার্ম 2 ডিফল্টরূপে লগইন শেল হিসাবে নতুন শেল খুলুন। যখন বাশকে একটি ইন্টারেক্টিভ লগইন শেল হিসাবে ডাকা হয় তখন এটি পড়ে ~/.bash_profileতবে তা হয় না ~/.bashrc। অন্যান্য প্ল্যাটফর্মের টার্মিনাল এমুলেটরগুলি প্রায়শই নতুন শেলগুলি লগইনবিহীন শেল হিসাবে খোলায়, উদাহরণস্বরূপ বাশ পড়তে পারে ~/.bashrcতবে তা নয় ~/.bash_profile। ওএস এক্স ব্যবহারকারীরা প্রায়শই অন্যান্য প্ল্যাটফর্মগুলির ~/.bash_profileসাথে সম্পর্কিত ব্যক্তিগত কনফিগারেশন ফাইল হিসাবে ব্যবহার করেন তবে টার্মিনাল বা আইটার্ম 2 থেকে ~/.bashrcউত্স ~/.bashrcথেকে নেওয়া ~/.bash_profileবা অ-লগইন শেল হিসাবে নতুন শেলগুলি খুলতে বলাও সাধারণ ।

আপনি আরও বিশ্বব্যাপী /etc/pathsবা আরও /etc/launchd.confবেশ কয়েকটি পথ পরিবর্তন করতে পারেন , তবে অনেকগুলি প্রেক্ষাপটে পাথটি এখনও ডিফল্ট হবে /usr/bin:/bin:/usr/sbin:/sbin। এবং আমার কেবল শেল এবং পাঠ্য সম্পাদকদের মধ্যে পথ পরিবর্তন করার প্রয়োজন ছিল।


দুর্দান্ত, উত্তরের জন্য ধন্যবাদ। আমি যোগ export PATH=$HOME/bin:$PATHআমার কাছে $HOME/.bash_profile
থি জি

আপনার রফতানির প্রয়োজন নেই , এবং উভয়ই ~(যখন উদ্ধৃত নয়) এবং $HOMEএক্সপোর্ট বা সরল অ্যাসাইনমেন্ট ব্যবহার করার সময় উভয় ভেরিয়েবল অ্যাসাইনমেন্টের আগে প্রসারিত হবে।
ল্রি

লরি রন্ত, ব্যক্তিগতভাবে আপনি কী পছন্দ করেন .bash_profileবা .profile? বা .bashrcআপনার নিজের ডিরেক্টরি ডিরেক্টরি আছে?
থি জি

আমি কেবল .বাশ_প্রোফাইল ব্যবহার করতাম, তবে এখন আমি .bashrc কে আমার মূল কনফিগারেশন ফাইল হিসাবে ব্যবহার করি এবং আমার .bash_profile এ রয়েছে . ~/.bashrc। নতুন শেলগুলি ইমাসে এবং টিএমউক্সে শেল মোডে লগইনবিহীন শেল হিসাবে খোলা হয়। আমি আমার প্রধান কনফিগারেশন ফাইল হিসাবে। প্রোফাইল ব্যবহার করব না, কারণ এটি অন্যান্য শেলগুলি যেমন ksh দ্বারাও পড়ে।
ল্রি

3

আপনি সাধারণত অতিরিক্ত রাস্তাগুলি $PATHপছন্দ করতেন PATH=$PATH:/$HOME/binকারণ আপনি যদি একই নামের সাথে অন্য কোনও এক্সিকিউটেবলকে ছাড়তে চান না /bin, ইত্যাদি etc.


4
কেউ সহজেই তর্ক করতে পারে যে আপনি $HOME/binঠিক সেই কারণেই শুরুতে রেখেছিলেন । তবে মূল বিষয় হ'ল ডিরেক্টরিগুলির ক্রম $PATHসম্পর্কিত এবং শেলটি প্রথম মিলিত কমান্ডটি চয়ন করবে। এই বিষয়টি চিহ্নিত করার জন্য ধন্যবাদ.
nohillside
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.