وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

نمونه های سفارشی سازی Bash PS1

0 3
زمان لازم برای مطالعه: 4 دقیقه


از متغیر پوسته ویژه برای کنترل استفاده می شود bash سریع. این متغیرهای پوسته PS1، PS2، PS3 و PS4 هستند. هر متغیر برای اهداف خاصی استفاده می شود. مقدار این متغیرها قبل از نمایش اعلان اولیه به صورت دستوری اجرا می شود. این PS1 متغیر حاوی مقدار اعلان پیش فرض است. برای تغییر ظاهر و محیط خط فرمان پوسته استفاده می شود. نمونه های مختلف استفاده از PS1 متغیر در این آموزش نشان داده شده است.

توالی های فرار رایج:

هنگام اجرای پوسته تعاملی، خط فرمان اولیه PS1 نمایش داده می شود. رشته اعلان را می توان با استفاده از انواع مختلف کاراکترهای خاص با اسلش بک گریز سفارشی کرد. پرکاربردترین کاراکترهای بک اسلش در زیر آورده شده است.

شخصیت فرار از واکنش هدف
\u برای نمایش نام کاربری فعلی استفاده می شود.
\ ساعت برای نام رایانه استفاده می شود.
\H برای نام میزبان استفاده می شود.
\d برای نمایش تاریخ با نام روز هفته، نام ماه و تاریخ استفاده می شود.
\w برای نمایش مسیر کامل دایرکتوری کاری فعلی استفاده می شود.
\ W برای نمایش آخرین قطعه فهرست کاری فعلی استفاده می شود.
\ t برای نمایش زمان جاری در قالب 24 ساعته استفاده می شود.
\ T برای نمایش زمان فعلی در قالب 12 ساعت استفاده می شود.
\@ برای نمایش زمان جاری در قالب 12 ساعته با AM/PM استفاده می شود.
\n JI برای اضافه کردن خط جدید استفاده می شود.
\e برای اضافه کردن یک کاراکتر فرار ASCII استفاده می شود.
\ v برای نمایش نسخه استفاده می شود bash.
جیل اسمیت
\ V برای نمایش نسخه استفاده می شود bash با سطح پچ

مقدار پیش فرض PS1 را بررسی کنید

مقدار پیش فرض PS1 شامل سه اطلاعات است. نام کاربری، نام میزبان و مسیر کامل فهرست کاری فعلی. برای نمایش مقادیر پیش فرض PS1 دستور زیر را اجرا کنید.

$ echo PS1 دلار

خروجی:

نمونه های سفارشی سازی Bash PS1

مثال-1: نمایش تاریخ و زمان

با استفاده از نویسه های \d و \t می توانید مقادیر تاریخ و زمان را با دستور اضافه کنید. دستور زیر را اجرا کنید تا مقادیر PS1 را برای نمایش مقادیر نام کاربری، تاریخ و زمان در خط فرمان تنظیم کنید. اینجا export کلمه کلیدی برای تغییر موقت خط فرمان فعلی استفاده می شود.

$ export PS1=“[ \u@\d \t ] $”

خروجی:

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

اگر دوباره باز کنید terminal، سپس خط فرمان پیش فرض ظاهر می شود. برای ذخیره دائمی مقدار PS1، فایل ~/.bashrc را با استفاده از هر ویرایشگر متنی باز کنید. در اینجا از ویرایشگر نانو استفاده شده است.

$ سودو نانو ~/.bashrc

خط زیر را در انتهای فایل اضافه کنید، فایل را ذخیره کنید و از ویرایشگر خارج شوید.

PS1=“[ \u@\d \t ] $”

دستور زیر را برای اضافه کردن خط در فایل ~/.bashrc به روز رسانی خط فرمان فعلی را اجرا کنید.

$ منبع ~/.bashrc

خروجی:

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

دستور زیر را اجرا کنید تا خط فرمان با استفاده از کاراکتر ‘\n’ در چندین خط نمایش داده شود. برای خط فرمان طولانی مفید است.

$ export PS1=“[\d]\n\u@\h: $”

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

مثال-2: رنگ پس زمینه و پیش زمینه را تغییر دهید

برای تنظیم رنگ های مختلف برای پس زمینه و پیش زمینه خط فرمان می توان از مقادیر رنگ های مختلف استفاده کرد. لیستی از نام های پس زمینه و رنگ های پیش زمینه با مقادیر در زیر آورده شده است.

پیشنهاد می‌کنیم بخوانید:  چگونه فایل های خود را جستجو کنیم روی خط فرمان لینوکس
رنگ های پس زمینه رنگ های پیش زمینه
مشکی = 40 مشکی = 30
قرمز = 41 قرمز = 31
سبز = 42 سبز = 32
زرد = 43 زرد = 33
آبی = 44 آبی = 34
بنفش = 45 بنفش = 35
فیروزه ای = 46 فیروزه ای = 36
سفید = 47 سفید = 37

دستور زیر را برای تغییر رنگ پس‌زمینه خط فرمان به بنفش اجرا کنید. در اینجا از کاراکتر فرار با مقدار رنگ 45 برای تنظیم پس‌زمینه بنفش استفاده شده است. برای تنظیم دنباله از کاراکتر ‘m’ استفاده شده است.

$ export PS1=“\e[45m\u@\h :\w$ \e[m”

Output:

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

Run the following command to change the foreground color of the command prompt to white. Here, ‘\e’ escaped character with color value 37 has been used to set the white foreground. Like the previous command, the ‘m’ character has been used to set the sequence.

$ export PS1=“\e[0;37m\u@\h :\w$ \e[m”

Output:

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

Example-3: Display emoji in the command prompt using the script

The emoji can be added to the command prompt in different ways. The bytes value of the emoji character has used in this example. Run the following command from the terminal to display the emoji in the command prompt based روی the exit status value.

$ export PS1=‘\u ( $(if [[ $? == 1 ]]؛ سپس printf “\xF0\x9F\x99\x8D”; else printf “\xF0\x9F\x99\x8E”؛ فی) )\[\e[0m\] :\w $’

خروجی:

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

مثال-4: ایموجی را در خط فرمان با استفاده از اسکریپت نمایش دهید

راه تولید ایموجی با اجرای a است bash فایل، همانطور که در این مثال نشان داده شده است. ایجاد یک bash فایل با اسکریپت زیر اسکریپت نوع کاربری که در حال حاضر وارد شده است را بررسی می کند. اگر کاربر فعلی کاربر عادی باشد، یک ایموجی با صورت شروع و اگر کاربر فعلی کاربر اصلی باشد، یک ایموجی با صورت عینک آفتابی نمایش می دهد.

پیشنهاد می‌کنیم بخوانید:  روش استفاده از گزینه Bash "Set –X".

user.sh

#!/صندوقچه/bash
#کاربر را بررسی کنید
اگر [ $UID = 0 ]; سپس

#اموجی را برای روت تنظیم کنید

export PS1=‘😎️~:$’
دیگر

#اموجی را برای کاربر عمومی تنظیم کنید

export PS1=‘🤩️~:$’
فی

دستور زیر را برای اجرای اسکریپت بالا اجرا کنید تا خط فرمان پوسته فعلی را تغییر دهید.

$ منبع user.sh

در مرحله بعد، دستورات زیر را اجرا کنید تا به عنوان یک کاربر root وارد شوید و به محل پوشه اسکریپت بروید.

$ سودو -من

$ سی دی خانه/فهمیده/bash

دستور زیر را دوباره اجرا کنید تا اسکریپت به عنوان کاربر ریشه اجرا شود.

$ منبع user.sh

خروجی:

با توجه به خروجی، ایموجی اول برای کاربر عادی و ایموجی دوم برای کاربر روت ظاهر شده است.

نمونه های سفارشی سازی Bash PS1نمونه های سفارشی سازی Bash PS1

نتیجه:

راه های تغییر خط فرمان پیش فرض به روش های مختلف با تغییر مقدار PS1 در این آموزش نشان داده شده است. برخی از کاراکترهای فرار رایج در نمونه های این آموزش استفاده شده اند تا به خوانندگان کمک کنند تا کاربرد PS1 را برای تغییر موقت یا دائمی خط فرمان فعلی بدانند.

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-30 16:53:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید