~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 ابزاری حیاتی و کارآمد در دنیای لینوکس است. معماری مدال و عملکرد سریع آن، کنترل فوقالعادهای برای پیکربندی، نگارش اسکریپت و مدیریت سیستم فراهم میکند. با وجود شیب یادگیری ابتدایی، استفاده منظم قدرت واقعی آن را نمایان میکند.
نوشته و پژوهش شده توسط دکتر شاهین صیامی