আমি উবুন্টুতে .bash_ প্রোফাইল খুঁজে পাচ্ছি না


67

আমি .bash_profileআমার /home/userডিরেক্টরিতে উবুন্টু 14.04 এ পাই না । আমি ls -aকমান্ডটি ব্যবহার করার জন্য ব্যবহার করেছি .bash_profile, তবে এরকম কোনও ফাইল নেই।


1
~/.profileপরিবর্তে আপনার ব্যবহার করা উচিত ।
মুরু


1
এটি বেশ সাধারণ যে কিছু কনফিগারেশন ফাইল (বা এমনকি ডিরেক্টরিগুলি) অনুপস্থিত। সেক্ষেত্রে যে সফ্টওয়্যারগুলি সেগুলি পড়তে হবে সেগুলি একটি ডিফল্ট কনফিগারেশন ব্যবহার করবে এবং / অথবা কনফিগারেশনটি পুনরুদ্ধার করতে অন্যান্য উত্সগুলি পড়বে। আপনি যদি এমন কোনও কনফিগারেশন ফাইল সংশোধন করতে চান যা বিদ্যমান না থাকে তবে প্রথমে এটি তৈরি করুন।
বাকুরিউ

উত্তর:


84

উবুন্টু ব্যবহার করে ~/.profile

আপনি .bash_profileউবুন্টুতে আপনার তৈরি করতে পারেন তবে তা আর .profileপড়বে না।

যদি আমরা। প্রোফাইল ফাইল পড়ি:

cat ~/.profile

আউটপুট

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.

~/.profileপরিবর্তে ব্যবহার করুন~/.bash_profile


। প্রোফাইল আমার জন্য কাজ করে না। আমাকে .bashrc vim ~/.bashrcতখন সম্পাদনা করতে হয়েছিল . ~/.bashrc
নাহিদ

.Bash_profile ব্যবহার করা উবুন্টুতে কাজ করে না। এটি ড্যাশকে জিইউআই লগইন শেল হিসাবে ব্যবহার করে, বাশকে নয়, তাই বাশ_প্রবন্ধটি পড়া হয় না।
জোনাথন হার্টলি

আপনি যদি নিজের। প্রোফাইল সম্পাদনা করেন তবে পরিবর্তনগুলি দেখতে আপনাকে আবার লগ আউট করতে হবে এবং আবার ফিরে যেতে হবে।
জোনাথন হার্টলি

8

যখন লগইন শেল বাশ শুরু করা হয় তখন এই ক্রমে এটির কনফিগার করা ফাইলগুলি সন্ধান করা হবে:

[0] ~/.bash_profile
[1] ~/.bash_login
[2] ~/.profile

প্রথমটি খুঁজে পাওয়ার পরে, এটি অন্যদের সন্ধান বন্ধ করে দেয় তাই যদি .bash_profileআমার $HOMEবাশে কোনও কিছু থাকে .bash_loginএবং .profileআর খুঁজবে না।

এই তিনটি ফাইলের নাম থেকে ওবুন্টু ডিফল্টরূপে ব্যবহার করে .profileআপনি এটির নাম পরিবর্তন করতে পারেন .bash_profileযদি আপনি চান:

mv ~/.profile ~/.bash_profile

এখন যদি আমরা ব্যবহার করে একটি নতুন ব্যাশ শেল খুলুন bash -l, su - $USER, sudo -u $USER -iবা অন্য কোন কমান্ড করে একটি লগ-ইন শেল হিসাবে ব্যাশ চালায়, ~/.bash_profilesourced হবে।

লক্ষণীয় গুরুত্বপূর্ণ:

আমি এখন পর্যন্ত যা বলেছি তা কেবল বাশের ক্ষেত্রেই প্রযোজ্য, আপনি যখন কোনও জিইআইআই থেকে সিস্টেমে লগইন করছেন, তখন ডিসপ্লে ম্যানেজার সঠিক ফাইলগুলি সসারের জন্য দায়বদ্ধ।

উবুন্টু gdm3তার প্রদর্শন পরিচালক হিসাবে ব্যবহার করে , যদি আমরা একবার খেয়াল /etc/gdm3/Xsessionকরি : আমরা দেখতে পাচ্ছি যে ফাইলগুলি থেকে কোনওটিই উত্সাহিত হবে না .profile:

# First read /etc/profile and .profile
for file in /etc/profile "$HOME/.profile"; do
  if [ -f "$file" ]; then
    source_with_error_check "$file"
  fi
done

সুতরাং আপনি লগইন করার জন্য যদি কোনও জিইউআই ব্যবহার করে থাকেন তবে ফাইলটিকে .profileনাম হিসাবে রাখুন অন্যথায় আপনি আপনার পরিবেশে কিছু পরিবর্তনশীল এবং সেটিংস মিস করতে পারেন।

আমি অনুমান করি যে আরও ভাল বিকল্পটি এতে একটি সিমিলিংক তৈরি করছে .profile:

ln -s ~/.profile ~/.bash_profile

এখন আপনার ডেটা বেঁচে আছে .profile, gdmকিছুই মিস করবেন না, বাশ বোঝা .bash_profileযা আসলে হয় .profileএবং সেগুলির প্রতিটি সম্পাদনা করে আপনি একই ফলাফল পান।

অনুপস্থিত। প্রোফাইলে?

আপনার যদি না থাকে .profileতবে এখান থেকে এর একটি অনুলিপি ধরুন:

cp /etc/skel/.profile ~/.profile

অথবা

# Remember the note above
cp /etc/skel/.profile ~/.bash_profile

তবে, যদি বাশ প্রথমে ~ / .bash_ প্রোফাইলে খুঁজছেন, তবে উবুন্টুতে এটি কীভাবে হয় না? উবুন্টু কি বাশকে সংশোধন করেছেন? এটি অদ্ভুত বলে মনে হচ্ছে। man bashউবুন্টুতে এখনও এটি কীভাবে .বাশ_প্রফাইলে খুঁজবে তা এখনও বর্ণনা করে।
জোনাথন হার্টলি

এটি .bash_profile প্রথম এটি সন্ধান করতে পারে এটি এটি খুঁজে পাবে না (কারণ এটি বিদ্যমান নেই) তারপরে .bash_loginআবার এটির সন্ধান করতে পারে না (কারণ উবুন্টু এই দুটি নাম ব্যবহার করে না) এটি চূড়ান্ত অনুসন্ধান করে .profileএবং হ্যাঁ এটি সেখানে রয়েছে। সুতরাং আপনি যদি একটি .bash_profileইন তৈরি করেন ~তবে আপনি উবুন্টুকে ওভাররাইট করছেন ~/.profile, এটি বাশের কিছুই ডিফল্ট আচরণ এখানে পরিবর্তন করা হয়নি।
রাভেক্সিনা

ঠিক আছে, এটাই আমি প্রথমে ভেবেছিলাম! এবং আপনি যা বর্ণনা করেন তা RHEL এ ঘটে on তবে উবুন্টুতে, তা হয় না। আমি যদি একটি তৈরি করি .bash_profile, এটি পড়া হয় না। আমি কেবল বুঝতে পেরেছিলাম যে উবুন্টু আর জিওআই লগইন শেল হিসাবে 'বাশ' ব্যবহার করে না। এটি পরিবর্তে 'ড্যাশ' ব্যবহার করে। আমি মনে করি এটি প্রায় 18.04 সাল থেকে সত্য হয়েছে।
জোনাথন হার্টলি

আপনি এখানে পয়েন্ট মিস করছেন। প্রকৃতপক্ষে আমরা বাশ সম্পর্কে নিজেই কথা বলছি, আমি এখানে যা বলছি তা হ'ল উবুন্টু '। প্রোফাইল' তৈরি করে অন্যকে নয়, তাই যদি আমরা একটি নতুন বাশ শেল (লগইন শেল) খুলি তবে এই ফাইলগুলি পড়ার আদেশ নেই, ' আমরা কী ডিস্ট্রো ব্যবহার করছি তা গুরুত্বপূর্ণ নয়। :)
রাভেক্সিনা

যদি পাঠকরা আপনার উত্তর হিসাবে পরামর্শ হিসাবে .ফ্যাফিল .bash_ প্রোফাইলে পুনরায় নামকরণ করেন, তবে উবুন্টুতে থাকা লোকদের জন্য, ফাইলটি লগইন বা টার্মিনাল খোলার সময় পড়তে হবে না। আপনি তাদের সিস্টেমটি ভঙ্গ করেছেন। ফাইলটি পড়ার একমাত্র উপায় হ'ল যদি তারা '--login' আর্গের সাথে ব্যাশ সেশনগুলি স্পষ্টভাবে লগইন শেল হিসাবে চালু করে। এটি তাদের ডেস্কটপে স্বয়ংক্রিয়ভাবে ঘটবে না।
জোনাথন হার্টলি

5

তার মানে ফাইলটির অস্তিত্ব নেই। তবে, আপনি ফাইল তৈরি করতে এবং লগইন শেল হিসাবে আহ্বান করা bashহলে ফাইলটি সম্পাদন / উত্স করতে পারেন bash। তাই আপনি যে কোনও সময় শেলের মাধ্যমে লগইন করেন (উদাহরণস্বরূপ ssh)।

আপনি যদি প্রতিটি টার্মিনাল খোলার সময় কন্টেন্টটি কার্যকর করতে চান তবে তার .bashrcপরিবর্তে আপনার ফাইলটি পরিবর্তন করা উচিত ।


.bash_profile ফাইলটি কেন অনুপস্থিত রয়েছে সে সম্পর্কে আপনি কিছু ধারণা পেতে পারেন?
রোলেদেনেজ

আপনি /etc/skel/ডিরেক্টরি থেকে এটি অনুলিপি করতে পারেন ।
ফ্রাঙ্কটিক

এটি ক্যানোনিকাল ডিজাইনের বিবরণ। তবে, এর অর্থ এই নয় যে এটি করতে পারে না।
বিশৃঙ্খলা

.bash_profileঅন্যান্য উত্তরের মন্তব্যে আমি উবুন্টুতে কারণ (এবং কাজ করে না) অনুপস্থিত থাকার কারণ ব্যাখ্যা করেছি ।
জোনাথন হার্টলি

2

~/.profileপরিবর্তে ব্যবহারের শীর্ষস্থানীয় উত্তরগুলি ~/.bash_profileআমার পক্ষে কাজ করে নি।

সংশোধন .bashrcকাজ করেছে

শুধু:

vim ~/.bashrc

দ্রষ্টব্য: আমি উবুন্টু ডাব্লুএসএল ব্যবহার করছি।


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

আমার জন্যও একই. ~/.profileকেবলমাত্র উবুন্টু 18.04-এ ডিফল্টরূপে লোড করা হয়নি
1:41

0

আপনি যদি .bashrc বলতে চান তবে আপনি এটি আপনার হোম ফোল্ডারে খুঁজে পাবেন। যদি এটি না থাকে তবে আপনি এটিকে / ইত্যাদি / স্কেল ফোল্ডার থেকে আপনার হোম ফোল্ডারে অনুলিপি করতে পারেন।

আপনার যদি এই বিষয়ে আরও কিছু তথ্যের প্রয়োজন হয় তবে দয়া করে স্টিফান লিপেনস পৃষ্ঠাটি দেখুন।

http://stefaanlippens.net/bashrc_and_others

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