آموزش ویرایشگر vi – قسمت دوم (آموزش لینوکس LPIC1-101)
آموزش ویرایشگر vi – قسمت دوم (آموزش لینوکس LPIC1-101)
برش، کپی و چسباندن متن
دستور d فقط متن را حذف نمی کند بلکه در واقع آن را برش داده و متن ما به حافظه بافر منتقل می شود.
حال ما می توانیم با استفاده از دستور p متن موجود در حافظه را پس از محل مکان نما و یا با استفاده از دستور P به قبل از محل مکان نما منتقل کنیم.
دستور y به منظور کپی کردن (مخفف Yank به معنی تکان دادن) متن به همان شیوه اي است که دستور d را به کار می بردیم.
جدول زیر برخی از مثال هاي ترکیبی دستور y با دستورهاي مختلف جابجایی را نشان می دهد:
خب اکنون کپی و چسباندن را امتحان می کنیم. مکان نما را در خط اول قرار داده و yy را فشار دهید تا خط اول را کپی کنید.
سپس مکان نما را به خط آخر برده (با استفاده از میانبرG) و سپس براي چسباندن متن در این محل p را فشار دهید:
درست مثل قبل از دستور u براي باطل کردن تغییر ایجاد شده استفاده می کنیم.
برخی از دیگر دستورات y که در جدول بالا آورده شده اند را امتحان کنید و رفتار دستورهاي p و P را بررسی کنید.
اتصال خطوط
معمولا ممکن نیست که مکان نما را به پایان یک خط برده و کاراکتر پایان یک خط را حذف کرده و یک خط را به خط پایین آن متصل کنید.
به همین دلیل براي این کار دستور خاصی در vi وجود دارد.
به این منظور از دستور J (این دستور را با دستور j که به منظور جابجایی خط استفاده می شود قاطی نکنید) براي اتصال خطوط به یکدیگر استفاده می کنیم.
اگر الان مکان نما را به خط 3 برده و سپس کلید J را فشار دهید، این اتفاق می افتد:
همانطور که مشاهده می کنید خطوط 3 و 4 به یکدیگر متصل می شود.
جستجو و جایگزینی
vi توانایی جابجایی مکان نما به موقعیت هاي جستجو شده را دارد.
این را می توان بر روي یک خط و یا یک فایل انجام داد.
همچنین می توان جایگزینی متن را انجام داد.
جستجو درون یک خط
دستور f یک خط را جستجو کرده و مکان نما را به نمونه بعدي از یک کاراکتر تعیین شده انتقال می دهد.
براي مثال:
دستور fa خط را جستجو کرده و مکان نما را به کلمه بعدي که داراي کاراکتر a هست انتقال می دهد.
پس از انجام یک جستجو در خط می توان آن را با استفاده از دستور ( : ) دو نقطه تکرار نمود.
جستجو یک فایل کامل
به منظور جابجایی مکان نما به رخداد بعدي یک کلمه یا عبارت دستور ( / ) اسلش استفاده می شود.
این همان دستوري است که در داخل دستور less در درس هاي قبلی استفاده کردیم.
وقتی که شما دستور / را تایپ می کنید، یک علامت / در پایین صفحه نمایش نشان داده می شود.
سپس کلمه یا عبارت مورد نظر را تایپ کرده و Enter را فشار دهید.
در نتیجه آن مکان نما به محل جستجو که عبارت ما قرار دارد منتقل می شود.
با استفاده از دستور n می توان جستجو قبلی را تکرار کرد:
جستجوي و جایگزینی سراسري
vi از یک دستور خارجی به منظور انجام عملیات هاي جستجو و جایگزینی در کل خطوط یک فایل استفاده می کند.
براي مثال:
به منظور تغییر کلمه linux در کلیه خطوط به کلمه lpic دستور زیر را وارد کنید:
خب این دستور را به چندین آیتم مختلف تقسیم کرده تا ببینیم هر کدام چگونه عمل می کند به جدول زیر توجه کنید.
هر یک از بخش هاي دستوري که وارد کردیم را توضیح می دهد:
نکته:
% یک میانبر است به این معنی که از خط اول تا آخر.
این رنج را می توان به صورت 1% تعیین کرد، یعنی از خط 1 تا آخرین خط در فایل.
اگر محدوه خطوط حذف شود عملیات فقط در خط فعلی انجام می شود.
ویرایش چندین فایل
گاهی اوقات نیاز است که چندین فایل را به صورت همزمان ویرایش کنیم.
شاید نیاز داشته باشید چندین فایل را تغییر دهید یا ممکن است محتواي یک فایل را به فایل دیگر کپی کنید.
با استفاده از vi می توانیم چندین فایل را براي ویرایش با هم باز کنیم چگونه؟
با اختصاص دادن نام آنها پس از دستور vi : vi file1 file2 file3 به منظور ایجاد فایل جدید با استفاده از دستور ls کمی متن را از دستور ls استخراج کرده
و داخل فایل ls-output.txt می ریزیم به صورت زیر:
خب حالا فایل قدیمی خود را به همراه فایل جدید در داخل vi ویرایش می کنیم به صورت زیر:
مشاهده می کنید که vi باز می شود و اولین نام وارد شده فایل را در صفحه نمایش نشان می دهد.
تعویض فایل ها
در vi به منظور تعویض و جابجایی بین فایل ها در داخل vi از دستور خارجی n: استفاده می کنیم
و به منظور بازگشت به فایل قبلی از دستور :N استفاده می کنیم درحالی که ما قادر به جابجایی از یک فایل به فایل دیگر هستیم،
ولی vi داراي یک قانون است که تا زمانی که که فایل قبلی ذخیره نشده است شما را از جابجایی منع می کند.
به منظور مجبور کردن vi به جابجایی بین فایل ها و نادیده گرفتن تغییرات ایجاد شده (تغییرات از بین خواهند رفت) یک علامت تعجب (!) پس از دستور اضافه کنید
علاوه بر این متدهاي تعویض فایل که گفتیم vi برخی دستورات دیگر دارد که مدیریت چندین فایل را آسان تر می کند.
ما می توانیم یک لیست از فایل هایی که ویرایش کرده ایم را با استفاده از دستور buffer: نمایش دهیم.
با این کار لیستی از فایل ها در پایین صفحه نمایش مشخص خواهد شد.
(دقت کنید که این دستور در vi موجود نیست و براي استفاده بایستی vim را نصب کرده باشید)
براي جابجایی به فایل دیگر پس از بافر شماره فایل را وارد کنید : buffer 2:
دقت کنید در صورتی که تغییري در فایل فعلی ایجاد کرده باشید فایل بعدي باز نخواهد شد
و براي نادیده گرفتن تغییرات بایستی دستور را به این صورت وارد کنید : buffer! 2:
بازکردن و ویرایش دیگر فایل ها
همچنین ممکن است که بخواهید به نشست ویرایش اخیر خود فایل هایی را براي ویرایش اضافه کنید.
یعنی یک فایل را براي ویرایش باز کرده اید و حالا نمی خواهید از vi خارج شوید و با استفاده از دستور قبلی دو فایل را براي ویرایش انتخاب کنید.
به این منظور براي آزمایش ابتدا یک فایل test.txt را براي ویرایش با استفاده از دستور vi باز می کنیم vi test.txt
سپس به منظور اضافه کردن فایلی دیگر از دستور e: مخفف Edit استفاده می کنیم.
به این منظور پس از e: نام فایل را وارد می کنید:
توجه داشته باشید که در این حالت نمی توانید با استفاده از دستورات n: و N: بین فایل ها سوییچ کنید.
براي سوییچ بین فایل ها در این حالت بایستی از دستور buffer به همراه شماره فایل استفاده کنید.
درج یک فایل به صورت کامل در فایلی دیگر
ممکن است بخواهید که یک فایل را به صورت کامل در داخل فایلی دیگر کپی کنید.
به این منظور فایل ls-output.txt را به تنهایی در داخل vi با استفاده از دستور vi ls-output.txt باز کنید.
به خط سوم رفته و دستور r test.txt: را وارد کنید تا محتویات فایل test.txt در اینجا کپی شود.
ذخیره کار خود در vi
شبیه تمامی دیگر کارها در vi ذخیره فایل هاي ویرایش شده نیز راههاي مختلفی دارد.
می دانید که می توان این کار را با استفاده از دستور w: انجام داد (که مخفف write به معنی نوشتن است)
ولی برخی راههاي دیگر وجود دارد که ممکن است مفید باشد.
در حالت دستوري (Command Mode) وارد کردن ZZ فایل اخیر را ذخیره کرده و شما را از vi خارج می کند.
دستور wq: یک دستور ترکیبی است و همین کار را انجام می دهد.
همچنین براي دستور w: ممکن است نام فایل را تعیین کنیم.
با این کار می توانیم یک فایل را با نامی دیگر ذخیره کنیم.
درست مثل گزینه save as که در اکثر برنامه ها وجود دارد.
جهت مشاهده دوره های آموزشی بر روی این لینک کلیک نمایید.
جدیدترین اخبار مجموعه فراز نتورک را در این صفحه اجتماعی دنبال کنید.
نویسنده: موسی رشوند
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.