আমি কীভাবে ম্যাক ওএস এক্সে $ PATH পরিবর্তনশীলটিকে পুনরায় সেট করব?


17

আমি আমার পাথের পরিবর্তনশীলকে গণ্ডগোল দিয়েছি, এবং এখন কিছু অ্যাপস যা আমি চালাচ্ছি সেগুলি তারিখ এবং ঘুমের মতো আদেশের জন্য কমান্ড না পাওয়া (ত্রুটি 127) বলে ত্রুটি বাড়ায় । এই কমান্ডগুলি শেলটিতে সরাসরি মৃত্যুদন্ড কার্যকর করা হলে কাজ করে।

আমি অনুমান করছি যে এটির একটি বিকৃত $ PATH ভেরিয়েবলের সাথে কিছু করার আছে এবং এটি কীভাবে পুনরায় সেট করতে হবে তা জানতে হবে। আমি ফাইলগুলি মুছে ফেলেছি ~ / .bashrc , ~ / .bash_profile , /etc/bash.bashrc , এবং ~ / .bashrc এবং ~ / । প্রোফাইল।

অন্য কোন ফাইলগুলি আমার $ PATH ধরে রাখতে পারে ? আমার পথ ধরে রাখতে পারে এমন অগণিত ফাইলগুলি খনন করার চেয়ে পথটি পুনরায় সেট করার সহজ উপায় কি আছে?

দ্রষ্টব্য, এই পাথ সমস্যাটি কেবলমাত্র আমার ব্যবহারকারীরই। আমি আমার সিস্টেমে একটি পরীক্ষা ব্যবহারকারী তৈরি করেছি, এবং পথটি ভাল, স্বাভাবিক অবস্থায় ফিরে এসেছিল।

আপডেট: ধন্যবাদ আমি মুছে ফেলি কোন ফাইলটি আমি মুছে ফেলেছিলাম তবে জিনিসগুলি আবার কাজ করছে। আপনি ছেলেরা 'বিশেষজ্ঞরা' পারেননি তাই করলেন। এবং হ্যাঁ, ক্রিস, আপনি ঠিক বলেছেন। আমি তৈরি করা প্যাট কাস্টমাইজেশনগুলি বাশ_লগিনে ছিল। তবে কোনওভাবেই আমি এই কাস্টমাইজেশনগুলি মোছা না করে কাজ করেছিলাম। আমি মনে করি এটি কোজ হতে পারে আমি 'আরসিইএনভায়রনমেন্ট' নামক এই প্রিফ্পেনটি ব্যবহার করছিলাম, এবং আমি উদ্ধৃতি এবং এটিতে একটি পথ দিয়ে প্রবেশ করেছি। এটি কোট নেয় কিনা তা আমি জানি না এবং এটি প্রতিস্থাপন করে না: AT পথ, যাতে সম্ভবত ত্রুটির মূল root আমি ভুলে গিয়েছিলাম এমনকি আমি যে prefane ছিল!


1
/ ইত্যাদি / প্রোফাইলটি প্যাথের জন্য প্রাথমিক মানসমূহের সেটিংসের জন্য সর্বাধিক সম্ভাবনাময় জায়গা, তবে সেখানে কিছু এটি সমস্ত ব্যবহারকারীর উপর প্রভাব ফেলবে। এছাড়াও ~ / .Bash_Lgin রয়েছে, যা আপনি তালিকাভুক্ত করেননি (যদিও আপনি এটি ইতিমধ্যে মুছে ফেলেছেন)।
ক্রিস জনসন

উত্তর:


19

আপনার যদি ~ / .MacOSX / পরিবেশ.plist ফাইল থাকে তবে এটি ডিফল্ট PATH মান সরবরাহ করে কিনা তা পরীক্ষা করে দেখুন।

যদি এটি এক্সএমএল ফর্ম্যাটে থাকে (প্লিস্টগুলি অনেকগুলি ফর্ম্যাটে থাকতে পারে), আপনি যে কোনও পাঠ্য সম্পাদক দিয়ে সম্পাদনা করতে পারেন। plutil -lint ~/.MacOSX/environment.plistআপনি যদি এটি নিজে হাতে সম্পাদনা করেন তবে এটি পরীক্ষা করে দেখুন ।

অথবা, আপনি এক্সএমএল বা বাইনারি ফর্ম্যাট প্লাস্ট ফাইলগুলিতে নিয়ন্ত্রিত পরিবর্তনগুলি করতে ডিফল্ট বা প্লিস্টবাডির মতো কমান্ড ব্যবহার করতে পারেন ।


আপনি সর্বদা আপনার শেল এর আরম্ভের ফাইলগুলিতে নিজের PATH সেট করতে পারেন।

আপনার শেলের প্রারম্ভ ফাইলগুলিতে ( .bashrcবা .bash_profile/ .bash_login/ .profile) নীচের মতো কিছু রাখুন :

PATH=/usr/bin:/bin:/usr/sbin:/sbin
export PATH

# add custom, local installations to PATH
PATH=/usr/local/bin:/usr/local/sbin:"$PATH"

# add MacPorts to PATH
PATH=/opt/local/bin:/opt/local/sbin:"$PATH"

এটি শেলটি শুরু হওয়ার সাথে সাথে ডিফল্ট PATH সেট করা যাই হোক না কেন ওভাররাইড করবে (প্রথমটি PATH=ব্যবহার করে না $PATH, তাই আপনি যা যা দেবেন তাই এটি সর্বদা শুরু হবে)।

শুধু 'লগইন' ফাইলের কেউ কখনও (প্রথম যে এক বিদ্যমান এবং এর পাঠযোগ্য ব্যবহার করা হবে ~/.bash_profile, ~/.bash_loginএবং ~/.profileব্যবহার করা হবে)। .profileঅন্যান্য শাঁসের সাথে পিছনের দিকে সামঞ্জস্যের জন্য — আপনি যদি এটি ব্যবহার করেন তবে এটিকে বাক্সের সাথে সুনির্দিষ্ট সিনট্যাক্সমুক্ত রাখতে ভুলবেন না । আপনি যদি যান .bash_loginবা .bash_profile(নামগুলি বাদে এগুলি কার্যকরী সমতুল্য) হন, তবে [[ -e ~/.bashrc -a -r ~/.bashrc ]] && source ~/.bashrc ]]উপরের কাছের মতো একটি লাইন ব্যবহার করুন যাতে লগইন শেলগুলি আপনার নিজের মধ্যে কাস্টমাইজেশন পেতে পারে .bashrc

আপনি যদি ব্যাশের সমস্ত দৃষ্টান্ত একই প্যাথ রাখতে চান তবে ব্যবহার করুন .bashrc। যদি আপনি প্রায়শই কমান্ড লাইন থেকে একক শেলের প্যাথটি ইন্টারেক্টিভভাবে সংশোধন করে থাকেন এবং সেই পরিবর্তিত PATH সাব-শেলগুলিতে ব্যবহার করতে চান (এমন ঘটনা যা সম্ভবত ভয়াবহ সাধারণ নয়) তবে তার পরিবর্তে আপনাকে 'লগইন' ফাইলগুলির মধ্যে একটিতে বিবৃতি দেওয়া উচিত । লগইন ফাইলগুলির মধ্যে একটি বেছে নিন এবং এটি ব্যবহার করুন।


8

1. আপনার টার্মিনাল খুলুন

2. আপনি প্রথমে কেবল আপনার বর্তমান $PATH, টাইপ পরীক্ষা করতে পারেন

প্রতিধ্বনি $ পথ

টার্মিনাল

৩. যদি $PATHটার্মিনালটি ফেরত দেয় তবে আপনি যে পথটি চান তা যদি হয় তবে আপনি ভাল; যদি না, টাইপ করুন

PATH = / usr / bin: / bin: / usr / sbin: / sbin রফতানি করুন

তারপরে টাইপ করুন

স্পর্শ করুন ~ / .bash_profile

, এবং তারপর টাইপ করুন

open / .bash_profile খুলুন

, তারপরে আপনি একটি সম্পাদনা পাঠ্য খোলার সন্ধান পাবেন, এখন যে সম্পাদনা পাঠটিতে আপনি চান তা টাইপ করুন; উদাহরণস্বরূপ, টাইপ করুন

পাথ =, / usr / বিন: / বিন: / usr / sbin: পক্ষ থেকে / sbin

(যা $PATHম্যাকের জন্য ডিফল্ট , আপনি এটি পুনরায় সেট করতে চান $PATHযাতে আপনার সম্ভবত এটি টাইপ করা উচিত), সংরক্ষণ করুন এবং তারপরে সম্পাদনা পাঠ্যক্রমটি বন্ধ করুন, তারপরে টার্মিনালটি বন্ধ করুন।

৪.এখন আপনি ইতিমধ্যে আপনার পরিবর্তন করেছেন $PATHবা ম্যাকের ডিফল্টটিতে পুনরায় সেট করুন $PATH!


2
আমি অনুভব করি উপরে অনেক কিছুই আছে যার কোনও প্রভাব নেই। আপনি কেন touchপ্রয়োজন বলে মনে করেন ? এছাড়াও, আপনি যেভাবেই টার্মিনালটি বন্ধ করে দিচ্ছেন, কেন exportকমান্ড লাইনে চালাবেন , তারপরে কেবল এটিকে যুক্ত করুন ~/.bash_profile(যা exportখুব প্রয়োজন ) এবং এটি দিয়ে সম্পন্ন করা হবে? (বিকল্পভাবে, source ~/.bash_profileবর্তমান উইন্ডোটিতে পরিবর্তনগুলি প্রয়োগ করতে চালনা করুন ))
আরজান

সত্য, এর কিছু অপ্রয়োজনীয়। .বাশ_প্রোফাইলে PATH মানটি যা কিছু করা উচিত সেগুলি সংরক্ষণ করা হচ্ছে।
থিংকোড

1

ক্রিস জনসনের rc/profileসম্পাদনাগুলিও ভাল কাজ করে /etc/profile

আমি কেবল সংযুক্ত:

export PATH="/usr/local/mariadb/bin:$PATH"

/etc/profileমারিয়াডিবি ইনস্টল (যা মাইএসকিউএল-এর জন্য দুর্দান্ত ড্রপ-ইন প্রতিস্থাপন হিসাবে কাজ করে) সম্পন্ন করতে ম্যাক ওএস এক্স ১০.৯ ম্যাভেরিক্সে আমার ফাইলটিতে।


0

আপনি যদি জেডএসএইচ ব্যবহার করেন - আপনি যখন আপনার টার্মিনাল সেশনটি পুনরায় চালু করবেন তখন পাথ ভেরিয়েবলটি কৃতজ্ঞতার সাথে পুনরুদ্ধার হবে বলে মনে হচ্ছে।

https://github.com/robbyrussell/oh-my-zsh

https://www.iterm2.com/

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