~3 دقیقه مطالعه · آخرین به‌روزرسانی ۱۳ آبان ۱۴۰۵

۱. ویرایش دستور با Readline


Bash از کتابخانه‌ای به نام Readline استفاده می‌کند که قابلیت‌های پیشرفته برای ویرایش، پیمایش، برش و درج متن فراهم می‌کند.


حرکت نشانگر:


کلیدعملکرد
Ctrl+Aحرکت به ابتدای خط
Ctrl+Eحرکت به انتهای خط
Ctrl+F / →حرکت به جلو یک کاراکتر
Ctrl+B / ←حرکت به عقب یک کاراکتر
Alt+Fحرکت به جلو یک کلمه
Alt+Bحرکت به عقب یک کلمه
Ctrl+Lپاک کردن صفحه و بازنشانی نشانگر

ویرایش متن:


کلیدعملکرد
Ctrl+Dحذف کاراکتر فعلی
Ctrl+Tجابجایی دو کاراکتر قبلی
Alt+Tجابجایی دو کلمه قبلی
Alt+Lتبدیل به حروف کوچک تا انتهای کلمه
Alt+Uتبدیل به حروف بزرگ تا انتهای کلمه

۲. Kill و Yank (برش و چسباندن)


Readline متن بریده‌شده را در kill-ring ذخیره می‌کند:


کلیدعملکرد
Ctrl+Kبرش از مکان فعلی تا انتهای خط
Ctrl+Uبرش از مکان فعلی تا ابتدای خط
Alt+Dبرش از مکان فعلی تا انتهای کلمه
Alt+Backspaceبرش تا ابتدای کلمه قبلی
Ctrl+Yجای‌گذاری آخرین برش (Yank)

۳. کلید Meta و نحوهٔ استفاده


در سیستم‌های قدیمی Unix، Meta با کلید Alt یا Esc شبیه‌سازی می‌شد. اگر Alt عمل نمی‌کند، کلید Esc را فشار داده و سپس کلید موردنظر را بزنید.


۴. تکمیل خودکار (Autocompletion)


فشردن Tab هنگام تایپ، نام فایل، دایرکتوری یا دستور را کامل می‌کند:


ls l[TAB] → ls-output.txt
ls Do[TAB] → Documents

تکمیل‌پذیرها شامل:


  • مسیر فایل‌ها و دایرکتوری‌ها
  • متغیرها مثل $HO[TAB]
  • نام کاربری مثل ~user
  • دستورات سیستم
  • هاست‌ها از فایل /etc/hosts

کلیدهای کنترل تکمیل:


کلیدعملکرد
Alt + ?نمایش همهٔ گزینه‌های تکمیل
Alt + *درج همهٔ تطابق‌ها

۵. تکمیل برنامه‌پذیر


Bash‌های مدرن تکمیل‌های سفارشی برای دستورهایی مثل git را پشتیبانی می‌کنند:


git ch[TAB] → checkout
set | less   # نمایش توابع تکمیل تعریف‌شده

۶. تاریخچه دستورات


history | less
history | grep /usr/bin
!88        # اجرای دستور شماره ۸۸

جست‌وجوی تعاملی با Ctrl+R:


  • Ctrl+R جست‌وجوی رو به عقب در تاریخچه را آغاز می‌کند؛ با هر حرفی که تایپ می‌کنید، نزدیک‌ترین دستور منطبق نمایش داده می‌شود.
  • فشردن دوبارهٔ Ctrl+R مورد منطبق قبلی را پیدا می‌کند.
  • Enter دستور یافت‌شده را اجرا می‌کند و Ctrl+J آن را برای ویرایش روی خط فرمان می‌گذارد.
  • Ctrl+G یا Ctrl+C از جست‌وجو خارج می‌شود.

گسترش تاریخچه:


عبارتعملکرد
!!تکرار آخرین دستور
!nاجرای دستور شمارهٔ n از تاریخچه
!stringآخرین دستوری که با string شروع می‌شود
!?stringآخرین دستوری که string را در خود دارد

برای اطمینان پیش از اجرای !string و !?string، می‌توانید ابتدا با history دستور مورد نظر را ببینید.


۷. جمع‌بندی


میان‌برهای Readline، تکمیل خودکار و جست‌وجو در تاریخچه، کار با Bash را سریع‌تر و دقیق‌تر می‌کنند. با تمرین روزانه، این کلیدها به عادت تبدیل می‌شوند و تایپ تکراری به حداقل می‌رسد.

نوشته و پژوهش‌شده توسط دکتر شاهین صیامی

مقالات مرتبط