X
تبلیغات
رایتل
راهنمای ویرایشگر vim - اموزش لینوکس و برنامه نویسی در لینوکس
جمعه 9 شهریور‌ماه سال 1386
به نام خدا


در لینوکس چندین نوع ویرایشگر وجود دارد که معروفترین آنها عبارتند از

emacs , vi

در این مبحث به بررسی ویرایشگر معروف vi خواهیم پرداخت

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

نام این ویرایش گر را به دلیل بصری (visual) بودن vi گذاشتند
این ویرایشگر ۲ حالت مختلف در حالت کار دارد
حالت درج کردن متن و حالت فرمان
در حالت درج کردن شما میتوانید متن مورد نظر را تایپ نمایید و در حالت فرمان شما می توانید کارهای ویرایشی همچون رفتن به قسمتهای مختلف فایل و حذف متن را انجام دهید

شما با این ویرایشگر می توانید کارهای مختلفی از جمله ایجاد یک فایل جدید در ویرایشگر و درج متن و ویرایش و حذف متن و جستجو و جایگزینی متن و اضافه کردن متن از فایلهای دیگر و کپی و برش و چسباندن متن و چاپ یک فایل و ذخیره متن ویرایش شده را انجام دهید

برای تمرین از ایجاد یک فایل جدید به نام note شروع می کنیم
برای ایجاد فایل مذکور از دستور زیر استفاده می کنیم

vi note

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

وقتی شما ویرایشگر را اجرا می کنید در حالت فرمان قرار دارد و بدین معنی است که هر چه شما با صفحه کلید تایپ می کنید ویرایشگر به عنوان فرمان می شناسد برای اینکه بتوانید متنی را تایپ نمایید باید از دستور i استفاده نمایید یا اینکه کلید insert
در صفحه نمایش را بفشارید

پس از فشردن کلید مذکور ویرایشگر اماده برای تایپ می باشد و شما هر کلیدی را بفشارید در داخل ویرایشگر تایپ خواهد شد

تکرار یک تغییر

از فرمان نقطه برای تکرار اخرین تغییر انجام شده استفاده نمایید برای انجام این کار شما میبایست پس از تایپ متن و یا هر تغییر کلید
Escape
رافشرده و سپس کلید
(.)
را بفشارید


۱مثال
اخرین تغییری که شما در متن خود ایجاد نمو ده اید تایپ این جمله است
linux is good
حال شما می خواهید این جمله را ۳ بار در متن خود داشته باشید
شما میبایست پس از تایپ جمله بالا یعنی
linux is good
کلید
Escape
را فشرده و سپس ۲ بار کلید
(.)
را بفشارید تا جمله شما ۲ بار تکرار گردد

شما برای پاک کردن کلمات تکراری که به اشتباه در جملات خود نوشته اید نیز می توانید از این شیوه استفاده نمایید


حرکت دادن مکان نما

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

H

برای رفتن مکان نما به گوشه سمت چپ بالای صفحه استفاده نمایید


توجه : برای اجرای صحیح فرمان در استفاده از حروف کوچک و بزرگ دقت نمایید


جدول زیر انواع فرامین برای حرکت مکان نما در ویرایش گر را نشان می دهد

h or left arrow یک موقعیت کاراکتری به سمت چپ
l or right arrow یک موقعیت کاراکتری به سمت راست
k or up arrow یک خط بالا
j or down arrow یک خط پایین
H گوشه بالا سمت چپ صفحه
L اخرین خط روی صفحه
nG رفتن به خط مشخص شده با عدد n
w یک لغت به جلو
b یک لغت به عقب
0 (Zero) رفتن به ابتدای خط جاری
$ رفتن به انتهای خط جاری

تذکر
استفاده از کلیدهای حروف برای حرکت مکان نما به زمانی بر می گردد که یونیکس از پایانه های
(teletype)
بهره می برد و کلیدهای جهت دار نداشت

حذف متن

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

x حذف کاراکتر بالای مکان نما
dd حذف خط جاری
dw حذف واژه بالای خط اگر مکان نما در وسط صفحه قرار داشته باشد از محل مکان نما تا اخر خط را حذف می نماید
D$ یا D حذف از مکان نما تا اخر خط
d0 حذف از مکان نما تا اول خط


تذکر
فرمان
dd
در حقیقت خطوط حذف شده را در حافظه موقت نگه داری می کند شما می توانید با دستور
p (paste)
برای درج خطوط حذف شده در مکانی دلخواه استفاده نمایید
برای کپی متن از فرمان
yy
بهره ببرید و برای چسباندن متن از فرمان
p
استفاده نمایید

لغو کردن یک دستور

برای برگرداندن یک دستور اجرا شده از این فرمان استفاده می شود به عنوان مثال شما به چند خط از یک متن را خذف کرده اید برای برگرداندن متون پاک شده کافی است در حالت فرمان کلید
u
را بفشارید

جستجو در متون

برای یافتن کلمه نوشته شده و یا اینکه کلمه مورد نظر چند بار تکرار شده از این روش استفاده می شود
برای اینکار ابتدا به حالت فرمان رفته و با فشردن کلید اچ مکان نما را به ابتدای متن ببرید و پس از زدن کلید
(/)
متن مورد نظر برای جستجو راتایپ نمایید و سپس کلید اینتر را بفشارید و برای ادامه جستجو کلمه مورد نظر کلید
(n)
را بفشارید


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

شما می خواهید در متن تایپ شده خود یک کلمه را که چند بار تکرار شده عوض نمایید
فرض کنید که شما در متن خود ۵ کلمه
windows
دارید
و می خواهید که بجای این کلمات از کلمه
linux
استفاده نمایید برای این کار از روش زیر استفاده نمایید

1,$s/windows/linux/g
عدد یک به کار رفته می گوید که از اولین سطر مطلب برای تعویض کلمه شروع نماید علامت
$
نیز اخر مطلب را نشان می دهد حرف اس نیز می گوید که کلمه ویندوز را با لینوکس تعویض کن و
حرف جی نیز می گوید که این کار را در هر قسمت از مطلب انجام بده

نکته

به علامت ویرگول بین عدد یک و علامت $ توجه کنید

ذخیره کردن متن ویرایش شده

برای ذخیره و خروج از ویرایشگر از دستور
wq:
استفاده نمایید
حرف دبلیو برای ذخیره متن ویرایش شده و حرف کیو برای خروج از ویرایشگر می باشد
برای خروج بدون اعمال تغییرات از دستور زیر استفاده نمایید
!q:

اضافه کردن متن از فایلی دیگر
برای این منظور از دستور زیر استفاده می کنیم
:r filename

شما ۲ فایل دارید و می خواهید محتویات فایل یک فایل را به دیگری اضافه نمایید به عنوان مثال نام ۲ فایل شما به قرار زیر است

text1 , text2
حال شما می خواهید محتویات
text1
را به
text2
منتقل نمایید از دستور زیر استفاده کی کنیم

r text1:

ترک موقت ویرایشگر ویم
برای ترک موقت ویرایشکر از دستور زیر استفاده می نماییم
i command:

مثال
i date :

باعث خروج موقت از ویرایشگر شده و تاریخ در ترمینال به نمایش در میاید برای بازگشت به محیط ویرایشگر کلید اینتر را بفشارید


دستور زیر برای شماره بندی صفحه نمایش کاربرد دارد
set number:
شماره های بکار رفته جزپی از فایل محسوب نمی شوند و فقط برای نمایش تعداد خطوط کاربرد دارند


و در انتها شما می توانید از فرمان زیر برای چاپ فایل استفاده نمایید

lpr filename!

و اگر ۲ چاپگر دارید می توانید با گزینه زیر نوع چاپگر را مشخص نمایید مانند دستور زیر

lpr -plp2 filename !

در اینجا
lp2
نام پرینتر ما می باشد

موفق باشید