~4 دقیقه مطالعه • بروزرسانی ۲۸ تیر ۱۴۰۴

۱. چرا vi را یاد بگیریم؟


  • دسترسی جهانی: در اکثر سیستم‌های یونیکس نصب است (بر اساس استاندارد POSIX)
  • سبک و سریع: راه‌اندازی فوری با استفاده کم از حافظه
  • فرهنگ ترمینالی: تسلط بر vi نشانگر درک سنتی یونیکس است

۲. راه‌اندازی و پیکربندی vi


vi filename.txt

برای فعال‌سازی ویژگی‌های vim پیشرفته:

echo "set nocp" >> ~/.vimrc

۳. خروج از vi



:q     # خروج
:q!    # خروج بدون ذخیره
:w     # ذخیره فایل
:wq    # ذخیره و خروج
ZZ     # میانبر ذخیره و خروج

اگر مطمئن نیستید در کدام حالت هستید، Esc بزنید تا به حالت فرمان برگردید.


۴. درک حالت‌ها


  • حالت فرمان (Command): برای حرکت، حذف و اجرای دستورات
  • حالت درج (Insert): ورود متن با کلیدهای i، a، o، A و ...
  • بازگشت به حالت فرمان با Esc

۵. حرکت با نشانگر



h / l             # حرکت به چپ / راست
j / k             # حرکت به پایین / بالا
0 / $             # ابتدای / انتهای خط
w / b             # کلمه بعدی / قبلی
G / 1G / 5G       # رفتن به آخر / اول / خط خاص
Ctrl+F / Ctrl+B   # پیمایش صفحه جلو / عقب

۶. ویرایش پایه



i           # درج قبل از نشانگر
a / A       # اضافه‌کردن بعد از نشانگر / انتهای خط
o / O       # باز کردن خط جدید زیر / بالای خط جاری
x / 3x      # حذف کاراکتر / چندتا
dd / d$ / dW# حذف خط / تا انتها / یک کلمه
u           # لغو آخرین تغییر (Undo)

۷. برش، کپی و چسباندن



dd          # برش خط جاری
yy / yW     # کپی خط / کلمه
p / P       # چسباندن بعد / قبل از نشانگر
J           # ادغام خط جاری با خط بعدی

۸. جست‌وجو و جایگزینی



/pattern         # جست‌وجوی الگو
n                # تکرار آخرین جست‌وجو
:%s/old/new/g    # جایگزینی همه موارد
:%s/term/Term/gc # تأیید برای هر جایگزینی

۹. کار با چند فایل



vi foo.txt bar.txt       # باز کردن چند فایل
:bn / :bp                # فایل بعدی / قبلی
:buffers                 # لیست فایل‌های فعال
:buffer 2                # رفتن به فایل شماره ۲
:r otherfile.txt         # درج محتوای فایل دیگر

۱۰. حالت‌های ذخیره‌سازی



:w                # ذخیره فایل
:w newname.txt    # ذخیره با نام جدید
:wq یا ZZ         # ذخیره و خروج
:q!               # خروج بدون ذخیره

نتیجه‌گیری


ویرایشگر vi ابزاری حیاتی و کارآمد در دنیای لینوکس است. معماری مدال و عملکرد سریع آن، کنترل فوق‌العاده‌ای برای پیکربندی، نگارش اسکریپت و مدیریت سیستم فراهم می‌کند. با وجود شیب یادگیری ابتدایی، استفاده منظم قدرت واقعی آن را نمایان می‌کند.


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