ইমাসে শেলের জন্য .bash_profile বা .bashrc?


11

আমি একটি বিশাল কমান্ডের জন্য একটি উপনাম লিখেছি এবং এটি জমা করে দিয়েছিলাম .bash_profileএবং আমার অবাক করে দিয়েছি, ইমাস আমার দ্বারা লেখা উপনামটি তুলেনি .bash_profile। ইন্টারনেটে কিছু অনুসন্ধান করার পরে, আমি .bashrcআমার $ HOM এ ওরফে কমান্ডটি দিয়ে একটি ফাইল তৈরি করেছিলাম এবং তারপরেই ইমাকরা তার নামটি বাছাই করে। আমি বিভ্রান্ত হয়ে পড়েছি কারণ টার্মিনাল.এপ থেকে উপন্যাস নেওয়া হয় .bash_profileতবে ইমাকগুলি কেবলমাত্র ওরফে নেয় .bashrc

আমি M-x shellচলছিলাম এবং আমি ম্যাকোজে আছি। কেউ আমাকে ব্যাখ্যা করতে পারবেন টিপে, Emacs এবং সঙ্গে সম্পর্ক কি .bashrc& .bash_profile

বিন্দু থেকে আরো কীভাবে আমি এ গিয়ে Emacs আমার পড়তে পাই .bash_profileকরার জন্য উপরন্তু .bashrc?


1
আপনার .bashrcএলিয়াসগুলি বাছাইয়ের জন্য আপনি ইমাসকে কীভাবে পেলেন ? আমি এটি জিজ্ঞাসা করছি কারণ আমার ইমাসগুলি (এবং দৃশ্যত অন্যদের ') এটি ডিফল্টরূপে করে না।
আর্চ স্টান্টন

@ আর্চস্ট্যান্টন এই প্রশ্নের উত্তর @ ভেরা জোহান্না দেখুন। আমি একই পদ্ধতি ব্যবহার করেছি। যদিও এখন আমি zshবাশের পরিবর্তে ব্যবহার করছি :)
চক্রবর্তী রাঘুনন্দন

উত্তর:


14

এটি সঠিক আচরণ। .bash_profileতথাকথিত লগইন শেলগুলির জন্য। যেমন আপনি যখন পাঠ্য মোডে আপনার কম্পিউটারে লগ ইন করেন বা টার্মিনাল এমুলেটরটিতে অন্য কম্পিউটারে sshবা মাধ্যমে বা অন্য কোনও কম্পিউটারে প্রবেশ করেন telnet...

.bashrcলগইনবিহীন শেলগুলির জন্য বোঝানো হয়, যেমন আপনি যখন ইতিমধ্যে লগইন হয়েছিলেন এবং নতুন এক্সটার্ম শুরু করেন বা এই ক্ষেত্রে ইম্যাকস shellমোড mode

সাধারণত .bash_profileএতে পড়ার জন্য কমান্ডগুলিও রয়েছে .bashrc:

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

সুতরাং .bashrcপ্রতিটি শুরুতে পড়া হয়।


সুতরাং, এলিয়াস অন্তর্ভুক্ত .bashrc; এটি পৃথক তৈরি .bash_aliasesএবং .bashrcএকই নির্মাণের মাধ্যমে এটি অন্তর্ভুক্ত করার রীতিও রয়েছে :

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

11

@ পপিংয়ে তৈরি পয়েন্টগুলি ছাড়াও, আপনি একটি পৃথক কনফিগারেশন ফাইলও ব্যবহার করতে পারেন যা কেবল ইমাস শেল ( M-x shell) এর জন্য লোড করা হবে :

ম্যানুয়াল পৃষ্ঠা (ইম্যাকস) ইন্টারেক্টিভ শেল থেকে :

ইমাকস নতুন শেল '' / .emacs_SHELLNAME 'ফাইলের বিষয়বস্তু যদি ইনপুট হিসাবে প্রেরণ করে তবে এটি উপস্থিত থাকলে শেলটি লোড হওয়া ফাইলটির নাম SHELLNAME। উদাহরণস্বরূপ, আপনি যদি ব্যাশ ব্যবহার করেন তবে এতে প্রেরিত ফাইলটি হ'ল '~ / .emacs_bash'। যদি এই ফাইলটি পাওয়া না যায়, ইমাস্যাক্স '~ / .emacs.d / init_SHELLNAME.sh' দিয়ে চেষ্টা করে।

আপনি যদি ইমাসের মধ্যে একটি আলাদা শেল প্রম্পট ফর্ম্যাট ব্যবহার করতে চান, বা ফাইলগুলিকে ইমল্যাক্সিয়েন্টে পাস করার জন্য ফাংশনগুলি সংজ্ঞায়িত করতে চান তবে এটি কার্যকর।

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