.Bashrc ফাইলটি কী?


100

.bashrcফাইল পড়া শুরু করার সময় ইউনিক্স শেলগুলি এতে লেখা কমান্ডগুলি কার্যকর করে। এই ফাইলটি কী এবং এটি কার্যকর করে?


2
কোনও পাঠ্য সম্পাদকে ফাইলটি খোলার চেষ্টা করুন - এটি সাধারণ পাঠ্যে রয়েছে।
উইকডফোর্ড

উত্তর:


66

আসলে, এটি bashবিশেষত যা .bashrc(এবং /etc/bash.bashrc) পড়ে । বিভিন্ন শেল প্রচুর আছে।

ব্যাশ man পৃষ্ঠা (ব্রায়ান ফক্স এবং Chet রামে করে; এছাড়াও তথ্য পৃষ্ঠা "ব্যাশ প্রারম্ভ Files" & ) প্রামাণিক রেফারেন্স:

লগইন শেল নয় এমন একটি ইন্টারেক্টিভ শেলটি শুরু করা হলে, বাশ ~/.bashrcসেই ফাইলটি উপস্থিত থাকলে কমান্ডগুলি পড়ে এবং কার্যকর করে । --norcবিকল্পটি ব্যবহার করে এটি বাধা দেওয়া হতে পারে । --rcfileফাইল বিকল্প পড়া এবং পরিবর্তে ফাইল থেকে কমান্ড চালানো ব্যাশ বাধ্য করা হবে ~/.bashrc

যখন ব্যাশটি অ-ইন্টারেক্টিভভাবে শুরু করা হয়, শেল স্ক্রিপ্টটি চালানোর জন্য, উদাহরণস্বরূপ, এটি BASH_ENVপরিবেশের পরিবর্তনশীলগুলির সন্ধান করে, সেখানে উপস্থিত হলে এর মানটি প্রসারিত করে এবং পড়ার এবং কার্যকর করার জন্য ফাইলের নাম হিসাবে প্রসারিত মানটি ব্যবহার করে। বাশ এমন আচরণ করে যেন নিম্নলিখিত আদেশটি কার্যকর করা হয়েছিল:

if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi  

তবে PATHভেরিয়েবলের মান ফাইলের নাম অনুসন্ধান করতে ব্যবহৃত হয় না।

ফাইলটি কেবল শেল কমান্ড। এটি সাধারণত প্রম্পট পরিবর্তন করতে, পরিবেশের ভেরিয়েবলগুলি সেট করতে এবং শেল পদ্ধতিগুলি সংজ্ঞায়িত করতে ব্যবহৃত হয়। Ditionতিহ্যগতভাবে.profile , ফাইলটি এই উদ্দেশ্যে ব্যবহৃত হয়, তবে bashএর অনেকগুলি এক্সটেনশান রয়েছে যে এটি ব্যবহারকারীদের জন্য নিজস্ব স্টার্টআপ ফাইলের প্রয়োজন যারা স্টার্টআপ ফাইলগুলিতে বাশিজম রাখতে চান ।

" লগইন শেল নয় " এর অর্থ উইন্ডো পরিচালকদের দ্বারা স্ক্রিপ্ট লঞ্চ এবং সাধারণত টার্মিনাল উইন্ডোগুলির মতো জিনিস। কখনও কখনও আমি আছে .bashrcএবং * BASH_ENVউত্স উত্স জন্য nix সিস্টেম সেট আপ .profile। যতক্ষণ আপনি পসিক্স শেল কমান্ডের বাইরে বিপথগামী না হন ততক্ষণ আপনি কোনও শেলের মধ্যে একই সূচনা পাবেন।

এটি বিশেষত মূল্যবান যখন shসত্যই হয় bash, যা কখনও কখনও ঘটে। এই ব্যবহার করতে:

. .profile

এটি এত জটিল হওয়ার একটি কারণ হ'ল কখনও কখনও লোকেরা শেল স্টার্টআপ ফাইলগুলিতে আউটপুট উত্পাদন করে এমন কিছু জিনিস রাখে বা তারা নিঃশর্তভাবে প্রম্পট সেট করে। ভাষা প্রোগ্রামের মধ্যে শেল প্রোগ্রাম এবং ব্যাকটিক কমান্ড চলাকালীন system(3)সি প্রোগ্রাম থেকে উল্লেখ না করার ফলে এটি প্রচুর সমস্যার সৃষ্টি করে। পথ bashশুরুর পাচ্ছি তা কই পরিকল্পিত, আমি মনে করি, একটি ফাইল যেখানে আউটপুট এবং প্রম্পট সেটিং ঠিক আছে এবং এক ফাইল আছে। Ditionতিহ্যগতভাবে, একটি রান-টাইম পরীক্ষা ইন্টারঅ্যাক্টিভিটি আলাদা করার জন্য করা হবে, উদাহরণস্বরূপ, প্রম্পটটি সেট করা আছে কিনা তা পরীক্ষা করে দেখুন।


ভাল উত্তর. মাত্র কিছু উদ্ধৃতি: ফাইলটি কেবল শেল কমান্ড। এটি সাধারণত প্রম্পট পরিবর্তন করতে, পরিবেশের ভেরিয়েবলগুলি সেট করতে এবং শেল পদ্ধতিগুলি সংজ্ঞায়িত করতে ব্যবহৃত হয়।
smwikedia

2
কেউ কি জানেন যে .bashrc / .zshrc এর আরসি অংশটির অর্থ কী?
ওয়ার্ল্ডএসএস

4
@ ওয়ার্মসএসএস: ভাল প্রশ্ন! আপনি কেবল এটি সম্পর্কে ভাবছেন না
কালেব শু

হয়তো আরসি মানে রানটাইম কনফিগারেশন।
মাইক ডিহন

12

যখন বাশ শুরু হয়, এটি বিভিন্ন স্ক্রিপ্টের বিভিন্ন কমান্ড সম্পাদন করে।

বাশকে একটি ইন্টারেক্টিভ লগইন শেল হিসাবে ডাকা হলে, এটি প্রথমে ফাইল / ইত্যাদি / প্রোফাইল থেকে কমান্ডগুলি পড়ে এবং কার্যকর করে, যদি সেই ফাইলটি বিদ্যমান থাকে। এই ফাইলটি পড়ার পরে, এটি সেই ক্রমে ash / .bash_profile, ~ / .bash_login, এবং ~ /। প্রোফাইলে অনুসন্ধান করে এবং উপস্থিত এবং পঠনযোগ্য যা প্রথমটি থেকে আদেশগুলি পড়ে এবং কার্যকর করে।

লগইন শেলটি যখন প্রস্থান করে, বাশ উপস্থিত থাকলে if / .bash_logout ফাইলটি থেকে আদেশগুলি পড়ে এবং কার্যকর করে।

লগইন শেল নয় এমন একটি ইন্টারেক্টিভ শেলটি যখন শুরু হয়, বাশ file / .bashrc থেকে কমান্ডগুলি পড়ে এবং কার্যকর করে, যদি সেই ফাইলটি বিদ্যমান থাকে। এটি --norc বিকল্প ব্যবহার করে বাধা দেওয়া হতে পারে। --Rcfile ফাইল অপশনটি বাশকে from / .bashrc এর পরিবর্তে ফাইল থেকে আদেশগুলি পড়তে এবং সম্পাদন করতে বাধ্য করবে।

http://en.wikipedia.org/wiki/Bash_(Unix_shell)

এখানে কয়েকটি কৌশল এবং টিপস রয়েছে:

http://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html

আসুন আমরা প্রম্পটটি সেট করার চেষ্টা করি যাতে এটি আজকের তারিখ এবং হোস্টনামটি প্রদর্শন করতে পারে:

PS1="\d \h $ "

1
কেন .profileপরে .bash_profile? কোন যুক্তি?
পেসেরিয়র

10

এটিতে আপনার শেলের জন্য বিভিন্ন "আরম্ভকরণ" কমান্ড থাকা উচিত, যেমন:

  • দরকারী উপকরণ তৈরি করা (উদাহরণস্বরূপ alias ll='ls -l')।
  • PATH এ আরও ডিরেক্টরি যুক্ত করা হচ্ছে।
  • নতুন পরিবেশের ভেরিয়েবল সেট করা হচ্ছে।

ওরফে ব্যবহার কী?
আনারস

2
@ আনারস: একটি উপনাম একটি কমান্ড চালানোর একটি উপায়, যা দীর্ঘ হতে পারে এবং তার চেয়ে কম সংক্ষিপ্ত থাকে। উদাহরণস্বরূপ, উপনাম ll='ls -l'আপনাকে কমান্ডটি llকার্যকর করতে টাইপ করতে দেয় ls -l
ওফার্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.