دوره‌ های آموزشی نووا
ژوئن 29, 2021

ساخت و ویرایش فایل متن با دستور vi

Avatar photo
برنامه نویس MERN Stack
ساخت و ویرایش فایل متن با دستور vi

در لینوکس برای ایجاد و ویرایش فایل متن دستورات زیادی وجود دارد که از بهترین آنها میتوان به دستور nano و دستور vi اشاره نمود. دستور vi یک ویرایشگر متن Screen-Oriented میباشد که از آن میتوان در محیط خط فرمان لینوکس استفاده نمود. در ادامه با آموزش ساخت و ویرایش فایل متن با دستور vi همراه نووا بلاگ باشید.

ایجاد فایل متن با دستور vi

ایجاد فایل متن با دستور vi کمی پیچیده است برای ایجاد فایل متن بعد از دستور vi نام فایل متن مورد نظر خود را بنویسید و بعد از ورود به محیط ویرایشگر vi با کلید a حالت ویرایش متن را فعال کرده و محتوای خود را در فایل متن بنویسید. برای مثال:

vi document.txt

بعد از نوشتن محتوا، کلید Esc را بزنید و با نگاه داشتن کلید shift حروف zz را برای ذخیره و خروج از فایل متن وارد کنید.

نکته: اگر نام فایل مشخص شده در جلوی دستور vi از قبل وجود داشته باشد دستور vi آن فایل را ویرایش میکند.

در محیط برنامه vi علامت (~) به معنای خطوط استفاده نشده و یا ایجاد نشده است. اگر این علامت در یک خط وجود نداشت، یعنی آن خط توسط کلید Enter ایجاد شده و یا ممکن است در آن Space و Tab وجود داشته باشد.

مدهای دستور vi

برای استفاده بهتر از ویرایشگر متن vi باید با مدهای این دستور آشنا شوید. به طور کلی دستور vi دو مد اصلی دارد که با استفاده از کلید Esc میتوان بین آنها سویچ نمود.

۱مد دستور: در مد دستور میتوان از دستورات vi برای مدیریت فایل متن استفاده نمود. مثلا برای ذخیره فایل متن ابتدا باید از کلید Esc برای ورود به مد دستور استفاده نمود سپس حروف zz و یا :wq وارد کنید.

۲مد نوشتن: در مد نوشتن حالت ویرایش متن فعال میشود. برای دسترسی به این مد کافیست ابتدا کلید Esc را بزنید سپس حرف a را برای ورود به مد ویرایش وارد کنید.

خروج از محیط ویرایشگر vi

برای خروج از محیط vi باید در مد دستوری vi حروف :q را وارد کنید. اگر تغییری در فایل متن داده باشید که نخواهید آنرا ذخیره کنید میتوانید از مقدار :q! استفاده کنید. برای مثال:

:q!

برای ذخیره کردن محتوا و خروج از فایل متن:

:wq

اگر میخواهید فایلی که روی آن کار میکنید در یک فایل جدید ذخیره شود باید بعد از حرف w یا wq نام فایل جدید خود را وارد کنید. برای مثال:

:wq newfilename

دستورات نوشتن متن:

در ادامه با جدولی از دستوراتی که میتوانید از طریق آنها محتوای خود را در فایل متن اضافه کنید مواجه میشوید:

کاراکترتوضیح
iاز حرف i میتوان برای نوشتن متن قبل از علامت مکان نما (cursor) استفاده نمود.
Iاز I حروف بزرگ میتوان برای نوشتن متن در اول خط (cursor) استفاده نمود.
aحرف a متن را بعد از علامت مکان نما اضافه میکند.
AA حروف بزرگ متن را در آخر خط انتخاب شده اضافه میکند.
oبا حرف o یک خط جدید بعد از خط انتخاب شده اضافه میشود و متن در آن خط نوشته خواهد شد.
Oبا O حروف بزرگ خط جدید قبل از خط فعلی انتخاب شده ایجاد میشود.
ویرایش فایل متن با دستور vi

دستورات جایگزینی متن:

از دستوراتی که در جدول زیر مشاهده میکنید میتوانید برای جایگزین کردن متن در دستور vi استفاده کنید.

کاراکترتوضیح
rتنها کارکتری که با علامت مکان نما انتخاب شده است جایگزین شود.
RR حروف بزرگ باعث میشود کاراکتری که انتخاب شده است تا زمانیکه از کلید Esc استفاده نکرده اید کاراکتر های خط فعلی جایگزین شوند.
cwبا وارد کردن cw کلمه انتخاب شده حذف میشود و میتوانید کلمه تازه ای را جایگزین کنید. علامت مکان نما باید اول کلمه باشد.
cNwبا مقدار cNw میتوانید تعداد کلماتی که میخواهید حذف شوند را بجای حرف N مشخص کنید. مثلا c5w پنج کلمه بعد از مکان نما را حذف میکند.
Cc حروف بزرگ باعث میشود از نقطه ای که علامت مکان نما در آنجا قرار دارد باقی جمله حذف شود.
ccبرای حذف کامل خط و نوشتن یک متن جدید میتوانید cc را وارد کنید.
جایگزین نمودن متن در ویرایشگر vi

حذف کاراکتر ها و کلمات

در جدول زیر دستورات حذف کاراکتر ها و کلمات قابل مشاهده میباشند:

کاراکترتوضیح
xکارکتری که با علامت مکان نما انتخاب شده است حذف خواهد شد
Nxبا Nx میتوانید تعداد کارکتر های که میخواهید حذف شوند را بجای N مشخص کنید. برای مثال: 10x
dwتنها کلمه ای که علامت مکان نما روی آن است حذف خواهد شد.
dNwبا مقدار dNw میتوان تعداد کلماتی که میخواهید حذف شوند را بجای N باید مشخص کنید. برای مثال: d5w
Dاز نقطه ای که علامت مکان نما در آنجا قرار دارد باقی خط حذف میشود.
ddبرای حذف کامل یک خط میتوانید از dd استفاده کنید.
حذف کلمات و کارکتر ها در ویرایشگر vi

کات کردن و پیست نمودن

در جدول زیر با دستورات Cut و Paste آشنا خواهید شد:

کاراکترتوضیح
yyکپی نمودن خط انتخاب شده در buffer
Nyyبرای کپی کردن چند خط در buffer بجای N باید تعداد خطوط را مشخص کنید. برای مثال: 10yy
pبرای جایگذاری متن کپی شده میتوانید از p استفاده کنید.
کپی و کات نمودن در محیط دستور vi

جستجو در دستور vi

در ادامه نحوه جستجو نمودن در دستور vi را یاد خواهید گرفت.

کاراکترتوضیح
/stringبرای جستجو نمودن یک کلمه میتوان از علامت / به همراه کلمه مد نظر استفاده نمود. (جستجوی رو به جلو) برای مثال: /name
?stringبرای جستجوی یک کلمه که قبل از علامت مکان نما میباشد میتوان از علامت ? و کلمه مد نظر استفاده نمود. برای مثال: ?name
nدر هنگام جستجو از n میتوانید برای رفتن به گزینه یافت شده بعدی استفاده کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *