এই নিবন্ধটি নিম্নলিখিত ফাইলগুলি চালানোর ক্রমটি ব্যাখ্যা করবে:
- /etc/profile
- ~/.bash_profile
- ~/.bashrc
- ~/.bash_login
- ~/.প্রোফাইল
- ~/.bash_logout
ইন্টারেক্টিভ লগইন শেলের জন্য এক্সিকিউশন সিকোয়েন্স
নিম্নলিখিত ছদ্ম কোড এই ফাইলগুলির সম্পাদনের ক্রম ব্যাখ্যা করে৷
৷execute /etc/profile IF ~/.bash_profile exists THEN execute ~/.bash_profile ELSE IF ~/.bash_login exist THEN execute ~/.bash_login ELSE IF ~/.profile exist THEN execute ~/.profile END IF END IF END IF
আপনি যখন ইন্টারেক্টিভ শেল থেকে লগআউট করেন, তখন কার্য সম্পাদনের ক্রম নিম্নরূপ:
IF ~/.bash_logout exists THEN execute ~/.bash_logout END IF
অনুগ্রহ করে মনে রাখবেন যে /etc/bashrc ~/.bashrc দ্বারা সম্পাদিত হয় যেমনটি নীচে দেখানো হয়েছে:
# cat ~/.bashrc if [ -f /etc/bashrc ]; then . /etc/bashrc fi
ইন্টারেক্টিভ নন-লগইন শেলের জন্য এক্সিকিউশন সিকোয়েন্স
একটি নন-লগইন ইন্টারেক্টিভ শেল চালু করার সময়, নিম্নলিখিতটি সম্পাদনের ক্রম:
IF ~/.bashrc exists THEN execute ~/.bashrc END IF
দ্রষ্টব্য: যখন একটি নন-ইন্টারেক্টিভ শেল শুরু হয়, তখন এটি ENV এনভায়রনমেন্ট ভেরিয়েবলের সন্ধান করে এবং ENV ভেরিয়েবলে উল্লিখিত ফাইল-নাম মানটি চালায়।
<কেন্দ্র> কেন্দ্র>সঞ্চালনের ক্রম পরীক্ষা করুন
এক্সিকিউশনের ক্রম পরীক্ষা করার একটি উপায় হল এই ফাইলগুলিতে বিভিন্ন PS1 মান যুক্ত করা এবং শেলে পুনরায় লগইন করা এবং লিনাক্স প্রম্পট দ্বারা কোন PS1 মানটি নেওয়া হয়েছে তা দেখুন। এছাড়াও, আগে আমরা আলোচনা করেছি কিভাবে PS1 ব্যবহার করে আপনার লিনাক্স প্রম্পটকে কার্যকরী এবং আড়ম্বরপূর্ণ করতে হবে।
1. /etc/profile কার্যকর করা হয়। /etc/profile-এ নিম্নলিখিত PS1 লাইন যোগ করুন এবং /etc/profile-এর ভিতরে সেট করা PS1 মানতে Linux প্রম্পট পরিবর্তন হয়েছে তা নিশ্চিত করতে পুনরায় লগইন করুন।
# grep PS1 /etc/profile PS1="/etc/profile> " [Note: re-login to see the prompt change as shown below] Last login: Sat Sep 27 16:43:57 2008 from 192.168.1.2 /etc/profile>
অনুগ্রহ করে নিশ্চিত করুন যে ~/.bash_profile এর কোনো PS1 নেই যাতে উপরেরটি সঠিকভাবে কাজ করে।
২. ~/.bash_profile কার্যকর হয়: নিম্নলিখিত PS1 যোগ করুন ~/.bash_profile, ~/.bash_login, ~/.profile এবং ~/.bashrc. লিনাক্স প্রম্পট PS1 মান সেট করার জন্য ~/.bash_profile এর ভিতরে যেভাবে নিচে দেখানো হয়েছে তা নিশ্চিত করতে পুনরায় লগইন করুন।
/etc/profile> grep PS1 ~/.bash_profile export PS1="~/.bash_profile> " /etc/profile> grep PS1 ~/.bash_login export PS1="~/.bash_login> " /etc/profile> grep PS1 ~/.profile export PS1="~/.profile> " /etc/profile> grep PS1 ~/.bashrc export PS1="~/.bashrc> " [Note: Upon re-login, it executed /etc/profile first and ~/.bash_profile next. So, it took the PS1 from ~/.bash_profile as shown below. It also did not execute ~/.bash_login, as ~/.bash_profile exists] Last login: Sat Sep 27 16:48:11 2008 from 192.168.1.2 ~/.bash_profile>
3. ~/.bash_login কার্যকর হয়৷৷ অন্য কিছুতে .bash_profile এর নাম পরিবর্তন করুন। লিনাক্স প্রম্পট PS1 মান ~/.bash_login এর ভিতরে যেভাবে নিচে দেখানো হয়েছে তাতে পরিবর্তন হয়েছে তা নিশ্চিত করতে পুনরায় লগইন করুন।
~/.bash_profile> mv .bash_profile bash_profile_not_used [Note: Upon re-login, it executed /etc/profile first. Since it cannot find ~/.bash_profile, it executed ~/.bash_login] Last login: Sat Sep 27 16:50:55 2008 from 192.168.1.2 ~/bash_login>
4. ~/.প্রোফাইল কার্যকর হয়৷৷ অন্য কিছুতে .bash_login এর নাম পরিবর্তন করুন। লিনাক্স প্রম্পটটি নীচে দেখানো হিসাবে ~/.প্রোফাইলের ভিতরে সেট করা PS1 মানতে পরিবর্তন হয়েছে তা নিশ্চিত করতে পুনরায় লগইন করুন।
~/.bash_login> mv .bash_login bash_login_not_used [Note: Upon re-login, it executed /etc/profile first. Since it cannot find ~/.bash_profile and ~/.bash_login, it executed ~/.profile] Last login: Sat Sep 27 16:56:36 2008 from 192.168.1.2 ~/.profile>
5. ~/.bashrc নন-লগইন শেল পরীক্ষার জন্য কার্যকর করা হয় . “ নির্বাহ করা হচ্ছে কমান্ড প্রম্পটে bash” আরেকটি নন-লগইন শেল দেবে, যা নীচে দেখানো হিসাবে .bashrc চালু করবে।
~/.profile> bash [Note: This displays PS1 from .bashrc as shown below.] ~/.bashrc> exit exit [Note: After exiting from non-login shell, we are back to login shell] ~/.profile>
আপনি যদি এই নিবন্ধটি পছন্দ করেন তবে অনুগ্রহ করে এটিকে del.icio.us এ বুকমার্ক করুন এবং এটি হোঁচট খায় .