এই স্টকটির সামগ্রীগুলি ~/.profileআমার 13.10 (মন্তব্য করা লাইনগুলি সরানো) এর সাথে এসেছে:
if [ -n "$BASH_VERSION" ]; then
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
এটি দেবিয়ান থেকে উত্তরাধিকার সূত্রে প্রাপ্ত হয়েছে তবে কেনোনিকাল কেন এটি রাখার সিদ্ধান্ত নিয়েছিল? যতদূর আমি জানি, এটি আদর্শ * নিক্স উপায় নয় এবং আমি বিভিন্ন সিস্টেম দেখেছি যেখানে এটি ঘটেছিল না, তাই আমি ধরে নিই তাদের অবশ্যই কারণগুলির অবশ্যই কারণ আছে। লগইন শেলগুলি চালানোর সময় এটি অপ্রত্যাশিত আচরণের কারণ হতে পারে (যেমন উদাহরণস্বরূপ মেশিনে ঝাঁকুনির সময়) যেখানে ব্যবহারকারী ~/.bashrcউত্সাহিত হওয়ার আশা করবেন না ।
আমি একমাত্র উপকারটি ভাবতে পারি তা হ'ল ব্যবহারকারীকে অনেক প্রারম্ভিক ফাইলের সাথে বিভ্রান্ত না করা এবং তাদের .bashrcএকা সম্পাদনা করার অনুমতি দেওয়া এবং শেল প্রকার নির্বিশেষে সেগুলি পড়তে হবে। এটি তবে একটি সন্দেহজনক সুবিধা কারণ লগইন এবং ইন্টারেক্টিভ শেলগুলির জন্য বিভিন্ন সেটিংস ব্যবহার করা প্রায়শই কার্যকর এবং এটি আপনাকে এড়াতে বাধা দেয়। এছাড়াও, লগইন শেলগুলি প্রায়শই গ্রাফিক্যাল পরিবেশে সঞ্চালিত হয় না এবং এই ফাইলগুলিতে আপনি কী সেট করেছেন তার উপর নির্ভর করে ত্রুটি এবং সতর্কতা এবং সমস্যা হতে পারে (ওহ আমার!)
তাহলে উবুন্টু কেন এটি করে, আমি কী মিস করছি?
.profileউত্সটি কেন .bashrc, সমস্ত লিনাক্স সংস্করণে এটি হয় না এবং আমি ভাবছি এর পিছনে যুক্তিটি কী।
-n "$BASH_VERSION"বাশের বাইরে কেন সত্য হবে ?