উত্তর:
এই প্রশ্নের উত্তর দেওয়ার জন্য গুরুত্বপূর্ণ অংশটি হ'ল এই স্নিপেট থেকে /etc/bash.bashrc
:
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
এর অর্থ যদি ভেরিয়েবলটি $debian_chroot
খালি /etc/debian_chroot
থাকে এবং ফাইলটি বিদ্যমান থাকে এবং পঠনযোগ্য হয় তবে ভেরিয়েবলটি ফাইলের সামগ্রীতে সেট করা থাকে।
এখন এটি কিসের জন্য? ফাইলটি /etc/debian_chroot
যখন আপনার অন্য ডিবিয়ান সিস্টেমের ভিতরে ক্রোটেড ডেবিয়ান সিস্টেম থাকে (উবুন্টু ডেবিয়ানের উপর ভিত্তি করে থাকে)। সুতরাং এটি আরও ভাল পর্যালোচনার জন্য। আপনি ক্রুটে আছেন কিনা তা আলাদা করার জন্য।
যখন আপনার কাছে অন্য সিস্টেমের ক্রুট রয়েছে উদাহরণস্বরূপ /srv/nfs4/netboot/
আপনি এই /srv/nfs4/netboot/etc/debian_chroot
ক্রুটের জন্য একটি নাম সেট করতে পারেন (আমার ক্ষেত্রে এটি একটি এনএফএস 4 পিএক্সই নেটবूट ড্রাইভ):
user@host:~# echo "netboot" >/srv/nfs4/netboot/etc/debian_chroot
এবং তারপরে আপনি ভিতরে প্রবেশ করবেন:
chroot /srv/nfs4/netboot/
আপনার প্রম্পটটি দেখতে এমন দেখাচ্ছে:
(netboot)user@host:~#
সাধারণত, এর ${var:+value}
অর্থ:
if $var is defined; then use 'value'; else do nothing
debian_chroot
পরিবর্তনশীল সংজ্ঞায়িত করা হয় /etc/bash.bashrc
ফাইল। এটি /etc/debian_chroot
ফাইলের বিষয়বস্তু নেয় যদি এই ফাইলটি বিদ্যমান থাকে এবং পাঠযোগ্য হয়। ডিফল্টরূপে এই ফাইলটি বিদ্যমান নেই।
আরও তথ্যের জন্য, দেখুন:
এখন, সেখানে এটি কী ঘটছে তা আরও ভালভাবে বুঝতে, টার্মিনালে নিম্নলিখিতটি করুন:
radu@Radu:~$
PS1 = '$ {var: + ($ var)} \ u @ \ h: \ w \ $'
রদু @ রাদু: ~ $ ভার = "পরীক্ষা"= '$ {var: + ($ var)} \ u @ \ h: \ w \ $' : ~ $ = "পরীক্ষা"
--------
||
------------------------------------
||
ভী
(পরীক্ষা) রডু @ রাদু: ~ $পরীক্ষা ) রদু @ রাদু : ~ $ var = ""
রদু @ রাদু: ~ $ ভার = "এবং আরও কিছু"
(এবং তাই) রদু @ রাদু: ~ $ = "" : ~ $ = "এবং তাই" এবং আরও কিছু ) রডু @ রাদু : ~ $
যদি পরিবেশের পরিবর্তনশীল $debian_chroot
উপস্থিত থাকে এবং খালি না ${debian_chroot:+($debian_chroot)}
হয় তবে প্রতিস্থাপন করা হবে ($debian_chroot)
(এটি $debian_chroot
পার্শ্ববর্তী পেরেনগুলির সাথে মান ))
$debian_chroot
সেট করা হয় /etc/bash.bashrc
বিষয়বস্তু থেকে /etc/debian_chroot
যদি যে ফাইল বিদ্যমান (এটা ডিফল্ট ভাবে না) এবং $debian_chroot
এখনো একটি মান নেই।
${debian_chroot:+($debian_chroot)}
সাধারণত আপনার বাশ প্রম্পটটি সংজ্ঞায়িত করতে ব্যবহৃত হয়, উদাহরণস্বরূপ
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
নামটির পরামর্শ অনুসারে আপনি etc/debian_chroot
আপনার ক্রুট মূল ফোল্ডারে রেখে কোন ক্রুট আছেন তা বোঝাতে আপনি এই পরিবর্তনশীলটি ব্যবহার করতে পারেন ।
আপনি যদি না জানেন যে ক্রুট কী সম্ভাবনা রয়েছে তবে আপনার এটির প্রয়োজন নেই ;-) তবে আপনি এখনও এটি ব্যবহার করতে পারেন আপনার বাশ প্রম্পটে কিছু অন্যান্য তথ্য অন্তর্ভুক্ত করার জন্য
ডিফল্টরূপে এটি কিছুই করে না।
যদি আপনার কখনই ব্যবহারের প্রয়োজন হয় না debian_chroot
তবে এটি ব্যবহারের মাধ্যমে কমান্ড প্রম্পটটি প্রদর্শিত হওয়ার সময়টি রাখার একটি সহজ জায়গা:
export PROMPT_COMMAND='debian_chroot=$(date +%r)'
আপনার টার্মিনালে এটি টাইপ করুন এবং সময়ের সাথে আপনার কমান্ডের প্রম্পট পরিবর্তনটি দেখুন:
rick@alien:~$ export PROMPT_COMMAND='debian_chroot=$(date +%r)'
(09:14:59 PM)rick@alien:~$
সময়টি সেট হয়ে যাওয়ার পরে, চলমান ঘড়িটি পেতে যা প্রতিটি দ্বিতীয় ব্যবহারের আপডেট করে:
while sleep 1;do tput sc;tput cup $(($(tput lines)-1)) 1;printf `date +%r`;tput rc;done &