از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش استفاده از ویرایشگر متن VIM – مقدمه ای برای توسعه دهندگان
سرفصلهای مطلب
یک نجار را بدون ابزار ، نویسنده بدون قلم یا سرآشپز بدون چاقو تصور کنید – این مانند تلاش برای تصور یک توسعه دهنده یا sysadmin بدون ویرایشگر متن قابل اعتماد است.
برای DEVS ، ویرایشگرهای متن چندتایی نهایی هستند که روش ایجاد ، مدیریت و تبدیل داده های خام را به خروجی معنی دار شکل می دهد.
در حالی که ویراستاران مدرن دوست دارند VS Code و متن متعالی برای رابط های براق خود محبوبیت پیدا کرده است ، در مورد سادگی و قدرت ابزارهای کلاسیک چیزی بی انتها وجود دارد.
VIM که مورد علاقه برخی و از دیگران ترسیده است ، ویرایشگر متن است که در آزمون زمان ایستاده است. VIM (VI بهبود یافته) که از سلف VI خود متولد شده است ، سرعت ، تطبیق پذیری و کنترل بی نظیری را ارائه می دهد.
در این آموزش ، شما می آموزید که چه چیزی VIM را بسیار خاص می کند. ما دستورات ، فیلتر کردن متن و قابلیت های دستکاری رشته ای آن را کشف خواهیم کرد تا به شما در مهار قدرت واقعی آن کمک کنیم.
آنچه را پوشش خواهیم داد:
-
ویرایشگرهای متن در لینوکس
-
روش باز کردن ویرایشگر VIM
-
حالت در VIM
-
دستورات اصلی VIM
-
دستورات را برش ، کپی ، چسباندن و حذف کنید
-
دستورات را جستجو و جایگزین کنید
-
روش خواندن پرونده ها با استفاده از بیشتر و کمتر
-
فیلترهای متن
-
ابزار خلاصه متن: WC
ویرایشگرهای متن در لینوکس
لینوکس انواع ویرایشگرهای متنوعی را ارائه می دهد ، هر کدام برای انواع مختلف کاربران – از مبتدیان گرفته تا توسعه دهندگان پیشرفته – طراحی شده اند.
سردبیران دوست دارند نانو برای افراد تازه وارد که به یک تجربه ساده و کاربر پسند در این زمینه نیاز دارند بسیار عالی هستند terminalبشر نانو دستورات مفیدی را در پایین صفحه نمایش می دهد و باعث می شود حرکت بدون منحنی یادگیری شیب دار آسان شود.
گودال، ویرایشگر پیش فرض برای محیط دسک تاپ GNOME ، یک رابط کاربری تمیز و گرافیکی ایده آل برای ویرایش متن اصلی ارائه می دهد. از طرف دیگر ، کیت به کاربران دسک تاپ KDE توجه می کند و تجربه ای غنی تر از ویژگی های مختلف ، با ویندوزهای متعدد ، برجسته سازی نحو و یکپارچه را فراهم می کند terminalبشر
Emacs یک ویرایشگر همه کاره و بسیار قابل تنظیم است که می تواند به یک محیط کل توسعه تبدیل شود ، ایده آل برای کاربران قدرت که بیش از یک ویرایشگر متن می خواهند.
VS Code وت اتم ویرایشگرهای مدرن و گرافیکی هستند که مجموعه ای از ویژگی های غنی ، از جمله پسوندها ، ابزارهای اشکال زدایی و ادغام GIT را ارائه می دهند و آنها را در بین توسعه دهندگان مورد علاقه قرار می دهند.
چرا بسیاری از devs vim را ترجیح می دهند؟
با وجود طیف گسترده ای از ویرایشگرهای متنی موجود در لینوکس ، VIM به عنوان انتخاب ترجیحی برای بسیاری از کاربران ، به ویژه کسانی که نیاز به یک محیط ویرایش سبک ، سریع و بسیار کارآمد دارند ، معرفی می شود.
VIM ، یک نسخه بهبود یافته از ویرایشگر کلاسیک VI ، در دسترس است روی تقریباً هر توزیع لینوکس و می تواند در هر دو گرافیکی و terminalمحیط های مبتنی بر محبوبیت آن ناشی از سرعت و کارآیی استثنایی آن است.
VIM کاملاً صفحه کلید محور است و به شما امکان می دهد بدون نیاز به ماوس کارهای ویرایش پیچیده ای را به سرعت انجام دهید. این امر باعث می شود که برای کار از راه دور ، جایی که ممکن است مجبور شوید اعتماد کنید بسیار مفید است روی منابع حداقل سیستم.
قدرت ویم در آن نهفته است ویرایش معین سیستم ، که ورودی متن و حالت های فرمان را جدا می کند ، که به زودی یاد خواهید گرفت. این به شما امکان می دهد اقدامات دقیقی را با چند کلید انجام دهید. این که آیا شما در حال پیمایش در یک پرونده هستید ، به دنبال یک رشته هستید ، یا دستکاری های متن پیچیده ای را انجام می دهید ، VIM شما را قادر می سازد بدون اینکه دستان خود را از صفحه کلید خارج کنید ، همه این کارها را انجام دهید.
زیرا VIM (یا VI) از قبل نصب شده است روی بیشتر سیستم های لینوکس ، اغلب گزینه های Go-to برای توسعه دهندگان و مدیران سیستم است که تکیه می کنند روی همه جا و ویژگی های قدرتمند آن. به طور خلاصه ، ترکیب VIM از سرعت ، تطبیق پذیری و کارآیی آن را به عنوان ویرایشگر انتخاب برای بسیاری از کاربران لینوکس که به دنبال تقویت بهره وری خود هستند ، می کند.
روش باز کردن ویرایشگر VIM
باز کردن پرونده در VIM ساده و کارآمد است. برای شروع ویرایش هر پرونده ، به سادگی از دستور زیر در خود استفاده کنید terminal:
vim [filename]
در اینجا ، جایگزین کنید [filename]
با نام پرونده ای که می خواهید باز کنید. اگر پرونده وجود نداشته باشد ، VIM یک پرونده جدید با آن نام ایجاد می کند. پس از اجرای ، VIM پرونده را باز می کند و به شما امکان می دهد بلافاصله ویرایش را شروع کنید.
مثال:
vim data.txt # A file that doesn't exist yet, so Vim creates a new file named data.txt
وقتی دستور را اجرا می کنید vim data.txt
، VIM پرونده جدیدی به نام خود باز کرد data.txt
زیرا پرونده ای با این نام قبلاً در فهرست فعلی وجود نداشت. در VIM ، این توسط پیام در انتهای ویرایشگر نشان داده شده است ، که آمده است: data.txt [NEW]
اگر پرونده ای که می خواهید ویرایش کنید از قبل وجود دارد ، می توانید با استفاده از همان دستور ، آن را در VIM باز کنید. شما قادر خواهید بود محتوای آن را ببینید و در صورت لزوم ویرایش کنید. اگر نمی بینید [New]
پیام در پایین (همانطور که برای پرونده های جدید نشان داده شده است) ، تأیید می کند که پرونده از قبل وجود دارد.
حالت در VIM
VIM چندین حالت دارد ، اما متداول ترین آنها عبارتند از:
-
حالت عادی (حالت فرمان) – برای ناوبری و اجرای دستورات استفاده می شود.
-
حالت درج – برای تایپ و ویرایش متن استفاده می شود.
هنگامی که یک پرونده را در VIM باز می کنید ، به طور پیش فرض در حالت فرمان شروع می شود. این حالت به شما امکان می دهد بدون تغییر مستقیم متن ، حرکت کنید ، دستورات را اجرا کنید و عملیات های مختلفی را انجام دهید. برای ویرایش متن در پرونده ، باید برای درج حالت تغییر دهید.
حالت فرمان چیست؟
حالت فرمان حالت پیش فرض در VIM است. در این حالت می توانید با استفاده از کلیدهای فلش از طریق پرونده حرکت کنید و محتوا را برش ، کپی ، چسباندن یا حذف کنید و دستوراتی مانند ذخیره یا ترک آن را اجرا کنید.
برای تغییر به حالت فرمان از هر حالت دیگر ، فشار دهید Esc
کلید
مثال: اگر در حالت درج هستید و برای ذخیره یا پیمایش نیاز به بازگشت به حالت فرمان دارید ، فشار دهید Esc
بشر
در تصویر فوق ، “hello.txt” 1l ، 1b “نشان می دهد که پرونده hello.txt
باز است و در حال حاضر در حالت فرمان است ، که هنگام باز کردن VIM حالت پیش فرض است. 1L 1 خط را در پرونده نشان می دهد (در حال حاضر پرونده خالی است ، بنابراین فقط یک خط خالی وجود دارد). 1b نشان دهنده 1 بایت است (پرونده در حال حاضر خالی است)
حالت درج چیست؟
درج حالت به شما امکان می دهد متن را در پرونده ویرایش یا تایپ کنید ، مشابه ویرایشگر متن سنتی. می توانید خطوط جدید را وارد کنید ، متن موجود را تغییر داده و مستقیماً تغییراتی ایجاد کنید.
مطبوعات i
در حالی که در حالت فرمان است. این سوئیچ می کند تا حالت را وارد کند و مکان نما را در موقعیت فعلی قرار می دهد و به شما امکان می دهد تایپ را شروع کنید.
در تصویر فوق ، “ininsert—” نشان می دهد که ویرایشگر به حالت درج تغییر یافته است و به شما امکان می دهد متن را مستقیماً در پرونده تایپ و ویرایش کنید.
نگاه سریع: وقتی یک پرونده را باز می کنید ، همیشه قسمت پایین را بررسی کنید terminal برای تعیین حالت فعلی خود. اگر خط پایین اطلاعات مربوط به پرونده را نشان می دهد ، شما در حالت فرمان هستید. اگر خط پایین صریح می گوید -- INSERT --
، شما در حالت درج هستید. اگر می خواهید از حالت فرمان برای درج حالت: مطبوعات i
بشر و از حالت را به حالت فرمان وارد کنید: مطبوعات Esc
بشر
دستورات اصلی VIM
در زیر برخی از دستورات اساسی برای کمک به شما در مدیریت کارآمد پرونده ها در VIM وجود دارد.
توجه: قبل از استفاده از این دستورات ، با فشار دادن در حالت فرمان اطمینان حاصل کنید Esc
بشر
1. تغییرات را ذخیره کنید
برای ذخیره تغییرات ایجاد شده در یک پرونده ، از دستور زیر استفاده کنید:
:w
این پرونده را بدون خروج از VIM می نویسد (ذخیره می کند).
2. تغییرات را ذخیره کنید و ترک کنید
اگر ویرایش شده اید و می خواهید تغییرات را ذخیره کنید و به طور همزمان از VIM خارج شوید ، استفاده کنید:
:wq
این دستور تغییرات را می نویسد و سپس ویرایشگر را ترک می کند.
3. بدون صرفه جویی در تغییرات ترک کنید
اگر می خواهید بدون صرفه جویی در هرگونه تغییر ، از آن خارج شوید ، می توانید استفاده کنید:
:q
در صورت عدم ایجاد تغییراتی از آخرین ذخیره ، این دستور پرونده را می بندد.
4. بدون صرفه جویی در تغییرات ، نیرو را ترک کنید
در صورت ایجاد تغییراتی در پرونده اما می خواهید بدون صرفه جویی در آنها از آن خارج شوید ، می توانید مجبور به ترک آن شوید:
:q!
در !
هرگونه تغییر نامشخص را نادیده می گیرد و بلافاصله پرونده را می بندد.
دستورات برش ، کپی ، چسباندن و حذف (به علاوه دیگران)
روش قرار دادن مکان نما برای دستکاری متن
قبل از استفاده از هر یک از دستورات ذکر شده در زیر (کپی ، برش ، چسباندن و حذف) ، مهم است که درک کنید که مکان نما را در کجا قرار دهید.
-
کپی (یانک) ، برش ، حذف: برای بیشتر عملیات ، مکان نما باید قرار گیرد در نقطه شروع متن شما می خواهید بر روی آن عمل کنید. این بدان معنی است که اگر در حال کپی کردن یا برش یک کلمه هستید ، مکان نما را در آن قرار دهید شروع از کلمه اگر با یک خط کار می کنید ، مکان نما باید در هر جایی باشد روی آن خط برای عملیات مبتنی بر بند ، مکان نما را در هر نقطه در پاراگراف قرار دهید.
-
خمیر: متن در مکان نما چسبانده خواهد شد موقعیتبشر بنابراین ، اطمینان حاصل کنید که مکان نما شما در جایی که می خواهید محتوای کپی شده یا برش داده شود قرار داده شده است.
به عنوان مثال ، بیایید بگوییم من یک File.txt دارم که محتوای زیر را دارد –
# file.txt
Hey readers,
In this blog, we're learning Vim. This file is for demonstration purposes,
where we'll explore various editing commands like cut, copy, paste, and delete. Let's dive in!
Vim is a powerful text editor that comes pre-installed روی most Unix-based systems.
Mastering Vim can significantly boost your efficiency as a developer.
To start with, let's learn some basic navigation and text manipulation commands.
Stay tuned as we break down each command with examples!
تمام دستورات ذکر شده در زیر از این پرونده به عنوان مرجع برای توضیح نمونه ها استفاده می کنند.
1. کپی (یانک)
در VIM ، کپی کردن “Yanking” نامیده می شود. برای کپی کردن متن از دستورات زیر استفاده کنید. موقعیت مکان نما برای اطمینان از کپی کردن متن صحیح مهم است.
فرمان | شرح | نمونه |
yl |
نامه ای از موقعیت مکان نما فعلی را کپی می کند (مکان نما باید باشد روی سمت چپ نامه ای که می خواهید کپی کنید) | اگر مکان نما شما است روی سمت چپ از “ح” در Hey readers, و شما تایپ می کنید yl ، VIM کپی می کند “ح” (فقط یک شخصیت). |
yw |
یک کلمه را کپی می کند (مکان نما باید در آغاز کلمه باشد) | اگر مکان نما شما است روی سمت چپ از “وبلاگ ،” در جمله ، تایپ کردن yw کپی خواهد کرد “وبلاگ ،” (از جمله کاما). |
yy |
کل خط را کپی می کند (مکان نما می تواند در هر جایی باشد روی خط) | اگر مکان نما شما در هر موقعیتی قرار دارد روی خط 1 سلام خوانندگان ، تایپ کردن yy کل خط را کپی می کند |
2yy |
دو خط را از جمله خط مکان نما فعلی کپی می کند (مکان نما می تواند در هر جایی باشد روی خط اول) | اگر مکان نما شما در هر موقعیتی قرار دارد روی خط 1 سلام خوانندگان ، تایپ کردن 2yy کل خط را به همراه خط بعدی کپی می کند. |
y{ |
بقیه پاراگراف را در بالای خط که مکان نما در حال حاضر قرار دارد کپی می کند (و از جمله آن خط) | اگر مکان نما شما در هر جایی در این بند 2 قرار دارد (VIM یک ویرایشگر متن قدرتمند است …). y{ همه چیز را از ابتدای این پاراگراف تا موقعیت مکان نما کپی می کند. |
y} |
بقیه پاراگراف را در زیر خط که مکان نما در حال حاضر قرار دارد کپی می کند (و از جمله آن خط) | اگر مکان نما شما در هر جایی در این بند 2 قرار دارد (VIM یک ویرایشگر متن قدرتمند است …). y} همه چیز را از موقعیت مکان نما فعلی تا انتهای پاراگراف کپی می کند. |
yG |
همه چیز را از خط فعلی تا انتهای پرونده کپی می کند (مکان نما باید در خط باشد که می خواهید عملیات کپی شروع شود) | اگر مکان نما شما در ابتدای این خط است “VIM یک ویرایشگر متن قدرتمند است … “، تایپ YG این خط و همه چیز را در زیر آن تا پایان پرونده کپی می کند |
2. برش (تغییر)
برش در VIM به عنوان “تغییر” متن شناخته می شود. عملیات برش جایگزین متن می شود. درست مانند کپی کردن ، هنگام استفاده از دستورات برش ، موقعیت مکان نما مهم است.
فرمان | شرح | نمونه |
cl |
نامه ای از موقعیت مکان نما فعلی را قطع می کند (مکان نما باید باشد روی سمت چپ نامه ای که می خواهید برش دهید) | اگر مکان نما شما است روی در “ح” در "Hey readers," و شما تایپ می کنید cl ، VIM حذف خواهد شد “ح” و به حالت درج سوئیچ کنید و به شما امکان می دهد جایگزینی را تایپ کنید. |
cw |
یک کلمه را برش می دهد (مکان نما باید در ابتدای کلمه باشد) | اگر مکان نما شما است روی در “وبلاگ ،” در جمله ، تایپ کردن cw حذف خواهد شد “وبلاگ ،” (از جمله کاما) و به حالت درج تغییر دهید و به شما امکان می دهد جایگزینی را تایپ کنید. |
caw |
یک کلمه را به همراه فضای سفید رنگ قطع می کند (مکان نما باید در ابتدای کلمه باشد) | اگر مکان نما شما در هر جای داخل است “وبلاگ ،”، تایپ کردن caw حذف خواهد شد “وبلاگ ،” (از جمله فضای قبلی) و به حالت درج سوئیچ کنید. |
cc |
کل خط را کاهش می دهد (مکان نما می تواند در هر جایی باشد روی خط) | اگر مکان نما شما در هر موقعیتی قرار دارد روی خط 1 (Hey readers, ) ، تایپ کردن cc کل خط را حذف کرده و به حالت درج سوئیچ می کند. |
2cc |
دو خط را قطع می کند ، از جمله خط مکان نما فعلی (مکان نما می تواند در هر جایی باشد روی خط اول) | اگر مکان نما شما در هر موقعیتی قرار دارد روی خط 1 (Hey readers, ) ، تایپ کردن 2cc این خط را به همراه خط بعدی حذف کرده و به حالت درج سوئیچ می کنید. |
c{ |
متن را در پاراگراف بالای مکان مکان نما برش می دهد | اگر مکان نما شما در هر جای پاراگراف 2 است (Vim is a powerful text editor… ) ، تایپ کردن c{ همه چیز را از موقعیت مکان نما تا شروع پاراگراف حذف کرده و به حالت درج سوئیچ می کند. |
c} |
متن را در بندهای زیر مکان مکان نما برش می دهد | اگر مکان نما شما در هر جای پاراگراف 2 است (Vim is a powerful text editor… ) ، تایپ کردن c} همه چیز را از موقعیت مکان نما تا انتهای پاراگراف حذف کرده و به حالت درج سوئیچ می کند. |
cG |
همه چیز را از خط فعلی تا انتهای پرونده برش می دهد (مکان نما باید در خط باشد که می خواهید عملکرد برش شروع شود) | اگر مکان نما شما در ابتدای این خط است (Vim is a powerful text editor… ) ، تایپ کردن cG این خط و همه چیز را در زیر آن تا انتهای پرونده حذف می کند ، سپس به حالت درج تغییر می دهد. |
3.
برای چسباندن متن کپی یا برش ، از دستورات زیر استفاده کنید. متن چسبیده در موقعیت مکان نما فعلیبشر
فرمان | شرح |
p (حروف کوچک) |
متن کپی شده یا برش را چسباند پس از مکان نما |
P (حروف بزرگ) |
متن کپی شده یا برش را چسباند پیش از مکان نما |
4. حذف
حذف متن در VIM به شما امکان می دهد متن ناخواسته را در حالی که در حالت فرمان باقی مانده اید حذف کنید. مکان نما باید به درستی قرار بگیرد تا متن مورد نظر را حذف کند. پس از حذف ، هنوز هم می توانید متن حذف شده را به یک مکان جدید بچسبانید.
فرمان | شرح | نمونه |
dl |
نامه ای را از موقعیت مکان نما فعلی حذف می کند (مکان نما باید باشد روی سمت چپ نامه ای که می خواهید حذف کنید) | اگر مکان نما شما است روی “ح” در "Hey readers," و شما تایپ می کنید dl ، VIM حذف خواهد شد “ح”بشر |
dw |
یک کلمه را حذف می کند (مکان نما باید در ابتدای کلمه باشد) | اگر مکان نما شما است روی “وبلاگ ،” در جمله ، تایپ کردن dw حذف خواهد شد “وبلاگ ،” (از جمله کاما). |
daw |
یک کلمه را به همراه فضای سفید دنباله حذف می کند (مکان نما باید در ابتدای کلمه باشد) | اگر مکان نما شما در هر جای داخل است “وبلاگ ،”، تایپ کردن daw حذف خواهد شد “وبلاگ ،” (از جمله فضای قبلی). |
dd |
کل خط را حذف می کند (مکان نما می تواند در هر جایی باشد روی خط) | اگر مکان نما شما در هر موقعیتی قرار دارد روی خط 1 (Hey readers, ) ، تایپ کردن dd کل خط را حذف می کند. |
2dd |
دو خط از جمله خط مکان نما فعلی را حذف می کند (مکان نما می تواند در هر جایی باشد روی خط اول) | اگر مکان نما شما در هر موقعیتی قرار دارد روی خط 1 (Hey readers, ) ، تایپ کردن 2dd این خط را به همراه خط بعدی حذف می کند. |
d{ |
پاراگراف بالای مکان نما را حذف می کند (مکان نما می تواند در هر نقطه از پاراگراف مورد نظر شما حذف شود) | اگر مکان نما شما در هر جای پاراگراف 2 است (Vim is a powerful text editor… ) ، تایپ کردن d{ همه چیز را از موقعیت مکان نما تا شروع پاراگراف حذف می کند. |
d} |
پاراگراف زیر مکان نما را حذف می کند (مکان نما می تواند در هر نقطه از پاراگراف مورد نظر شما حذف شود) | اگر مکان نما شما در هر جای پاراگراف 2 است (Vim is a powerful text editor… ) ، تایپ کردن d} همه چیز را از موقعیت مکان نما تا انتهای پاراگراف حذف می کند. |
dG |
همه چیز را از خط فعلی تا انتهای پرونده حذف می کند (مکان نما باید در خط باشد که می خواهید عملکرد حذف شروع شود) | اگر مکان نما شما در ابتدای این خط است (Vim is a powerful text editor… ) ، تایپ کردن dG این خط و همه چیز را در زیر آن تا پایان پرونده حذف می کند. |
5. سایر دستورات مفید
دستورات | شرح |
gg |
مکان نما را به خط اول پرونده منتقل می کند |
G |
مکان نما را به آخرین خط پرونده منتقل می کند |
:se nu |
شماره های خط را در پرونده تنظیم می کند |
:se nonu |
اعداد خط را از پرونده حذف می کند |
:u |
آخرین عمل را خنثی می کند |
:10 |
پرش به خط 10 (به عنوان مثال) |
توجه داشته باشید که حذف کردن متن را حذف می کند اما آن را به طور پیش فرض در کلیپ بورد سیستم ذخیره نمی کند. متن به ثبت نام بی نام ویم می رود ، به این معنی که می توان آن را در VIM چسباند اما خارج از آن نیست. برش صریحاً متن را در کلیپ بورد ذخیره می کند تا بتوانید آن را در خارج از VIM نیز چسبانده اید.
دستورات را جستجو و جایگزین کنید
VIM جستجوی قدرتمند را فراهم می کند و عملکردی را جایگزین می کند که به شما امکان می دهد کلمات یا الگوهای خاصی را پیدا کنید و آنها را به طور کارآمد جایگزین کنید. درک روش جستجو و جایگزینی متن برای بهبود بهره وری در هنگام ویرایش پرونده های بزرگ مهم است.
در زیر تفکیک دستورات مختلف جستجو و جایگزینی در VIM آورده شده است.
دستورات جستجو
-
به جلو جستجو کنید (
/
): هنگامی که می خواهید یک کلمه یا الگوی زیر مکان نما را جستجو کنید ، از آن استفاده کنید/
فرمان این در پرونده به جلو جستجو می شود. -
جستجو به عقب (
?
): به طور مشابه ، اگر می خواهید یک کلمه یا الگوی بالاتر از مکان نما را جستجو کنید ، از آن استفاده کنید?
فرمان با این کار به عقب در پرونده جستجو می شود.
پس از انجام جستجو ، می توانید از طریق نتایج جستجو حرکت کنید:
-
n
: به مسابقه بعدی در همان جهت بروید (اگر جلو باشد/
، اگر عقب باشد?
). -
N
: به مسابقه قبلی در جهت مخالف بروید (اگر عقب باشد/
، اگر به جلو اگر?
).
دستورات را جایگزین کنید
پس از قرار دادن کلمه یا الگویی که می خواهید جایگزین کنید ، VIM چندین دستور برای جایگزینی متن ارائه می دهد.
فرمان (در حالت فرمان) | شرح |
/search_word |
برای کلمه داده شده جستجو می کند و مکان نما را به اولین وقوع آن در زیر موقعیت مکان نما فعلی سوق می دهد. |
:s/search_word/replace_word |
اولین وقوع را جایگزین می کند search_word با replace_word در خط فعلی |
:s/search_word/replace_word/g |
جایگزین همه وقایع search_word با replace_word در خط فعلی |
:%s/search_word/replace_word |
اولین وقوع را جایگزین می کند search_word با replace_word در کل پرونده |
:%s/search_word/replace_word/g |
جایگزین همه وقایع search_word با replace_word در کل پرونده |
در اینجا یک مثال آورده شده است:
در Vim ، /Tanishka
الگوی جستجوی یک مسابقه دقیق و حساس به کلمه “Tanishka” است.
برای جایگزینی “Tanishka” با یک کلمه دیگر ، مانند “Linux” ، می توانید از دستور جایگزینی مانند این استفاده کنید: :s/Tanishka/Linux
:
به طور پیش فرض ، این دستور فقط اولین وقوع “Tanishka” را در خطی که مکان نما در آن قرار دارد جایگزین می کند.
اگر می خواهید تمام وقایع “Tanishka” را در همان خط جایگزین کنید ، باید اضافه کنید g
(جهانی) پرچم پس از رشته جایگزینی مانند این: :s/Tanishka/Linux/g
بشر
این تضمین می کند که هر نمونه از “Tanishka” در خط فعلی با “لینوکس” جایگزین می شود.
به همین ترتیب ، %
برای مشخص کردن نماد استفاده می شود کل پرونده هنگام انجام تعویض در اینجا روش عملکرد آن در ترکیب با دستور جایگزینی آورده شده است:
-
اولین واقعه را در هر خط از پرونده جایگزین کنید:
:%s/Tanishka/Linux
: این دستور فقط اولین وقوع “Tanishka” در هر خط از پرونده را جایگزین می کند.
-
تمام وقایع را در کل پرونده جایگزین کنید:
:%s/Tanishka/Linux/g
: اضافه کردنg
(جهانی) پرچم تضمین می کند که تمام وقایع “Tanishka” در هر خط از پرونده با “لینوکس” جایگزین می شود.
روش خواندن پرونده ها با استفاده از more
وت less
در cat
فرمان
از دستور CAT اغلب برای خواندن محتوای پرونده استفاده می شود.
به عنوان مثال:
cat file.txt # Displays content of file
در حالی که cat
Command ابزاری ساده برای مشاهده محتوای پرونده است ، سادگی آن هنگام کار با پرونده های بزرگ یا در صورت نیاز به پیمایش دقیق ، اغلب کوتاه می شود. اینجاست more
وت less
دستورات بازی می شوند و قابلیت های پیشرفته ای را برای مشاهده و پیمایش متن به طور مؤثر ارائه می دهند.
در more
فرمان
در more
فرمان به شما امکان می دهد پرونده ها را به طور همزمان مشاهده کنید ، و آن را به ارتقاء قابل توجهی از cat
هنگام برخورد با پرونده های بزرگ. اما از نظر ناوبری عقب و ویژگی های پیشرفته محدودیت هایی با محدودیت دارد.
در اینجا نحو برای more
:
more [FILENAME]
و در اینجا یک مثال وجود دارد:
more file.txt # Displays content of file.txt one page at a time
کلیدهای مورد استفاده در هنگام مشاهده:
-
نوار فضایی: با یک حرکت می کند page
-
Enter: با یک خط به جلو حرکت می کند
-
ب: با یک حرکت می کند page
-
س: محتوای پرونده را ترک و خروج کنید
در less
فرمان
در less
فرمان اغلب یک جایگزین برتر برای آن محسوب می شود more
با توجه به قابلیت های پیشرفته ناوبری و انعطاف پذیری. برخلاف more
با less
هر دو ناوبری رو به جلو و عقب را امکان پذیر می کند ، و آن را برای بررسی پرونده های بزرگ یا سیاهههای مربوطه ایده آل می کند.
این نحو آن است:
less [FILENAME]
و در اینجا یک مثال وجود دارد:
less file.txt # Displays content of file.txt one page at a time
کلیدهای مورد استفاده در هنگام مشاهده:
-
نوار فضایی: با یک حرکت می کند page
-
Enter: با یک خط به جلو حرکت می کند
-
ب: با یک حرکت می کند page
-
کلید فلش بالا/پایین: با یک خط بالا یا پایین حرکت می کند
-
س: ترک و خروج کمتر
تنها تفاوت عمده بین more
وت less
دستورات این است که فرمان کمتری به پیمایش دو طرفه اجازه می دهد ، بنابراین استفاده از آن به طور معمول راحت تر است.
فیلترهای متن
بوها فیلتر متنی در لینوکس command-line ابزاری که داده های متنی را با اصلاح ، استخراج یا قالب بندی آن قبل از تولید نتیجه پردازش می کند.
فیلترهای افقی
تمرکز فیلتر افقی روی استخراج ، دستکاری یا نمایش خطوط خاص از یک فایل یا خروجی فرمان. ابزارهای متداول شامل head
با tail
وت grep
بشر
-
head
: فرمان سر چند خط اول یک پرونده را نشان می دهد. به طور پیش فرض ، 10 خط اول را نشان می دهد. این نحو آن است:head [OPTIONS] [FILENAME]
و در اینجا مثالی از روش استفاده از آن آورده شده است:
head file.txt # Displays first ten lines from file.txt head -n 5 file.txt # Displays first five lines from file.txt
-
tail
: دستور دم چند خط آخر یک پرونده را نشان می دهد. به طور پیش فرض ، 10 خط آخر را نشان می دهد. این نحو آن است:tail [OPTIONS] [FILENAME]
و در اینجا یک مثال وجود دارد:
tail file.txt # Displays last ten lines from file.txt tail -n 5 file.txt # Displays last five lines from file.txt
-
grep
: دستور GREP الگوهای موجود در یک پرونده یا ورودی را جستجو می کند. خطوطی را که با یک الگوی معین مطابقت دارند ، فیلتر می کند. این نحو آن است:grep [OPTIONS] [PATTERN] [FILENAME]
گزینه ها:
-
-i
: جستجوی حساس مورد. -
-v
: مسابقه را معکوس کنید (خطوط تطبیق را حذف کنید). -
-n
: تعداد خط مسابقات را نشان دهید.
-
نمونه
grep Tanishka data.txt # Displays lines that have 'Tanishka' in them
grep -i Tanishka data.txt # Displays lines that have 'Tanishka' irrespective of case
grep -v Tanishka data.txt # Displays lines that do not have 'Tanishka' in them
grep -n Tanishka data.txt # Displays lines that have 'Tanishka' in them along with number line
فیلترهای عمودی
-
cut
: دستور CUT قطعات منتخب خطوط را از هر پرونده نشان می دهد روی محدود کننده ها ، موقعیت های بایت یا زمینه های شخصیت. این نحو آن است:cut [OPTION] [FILENAME]
همچنین با گزینه های مختلفی همراه است:
-
-c
: شخصیت های خاص را استخراج کنید. -
-b
: بایت های خاص را استخراج کنید. -
-d
: یک تعیین کننده سفارشی را مشخص کنید (برگه پیش فرض است).cut -d ":" -f 2 file.txt
→ زمینه دوم جدا شده توسط:
بشر
-
-f
: زمینه های خاص را استخراج کنید.cut -d "," -f 1,3 file.csv
→ زمینه های 1 و 3 از CSV.
-
مثال:
cut -c 1-10 Sample.txt # Displays characters from position 1 to 10
cut -c 5 Sample.txt # Displays character at position 5
cut -c 3,5 Sample.txt # Displays characters from position 3 and 5 only
cut -d " " -f 1 Sample.txt # Displays first field separated by a space
cut -d " " -f 2 Sample.txt # Displays second field separated by a space
cut -d " " -f 3 Sample.txt # Displays third field separated by a space
cut -d " " -f 1-3 Sample.txt # Displays first to third fields separated by a space
cut -d " " -f 1,3 Sample.txt # Displays first and third fields separated by a space
cut -d ":" -f 5 /etc/passwd # Displays fifth field separated by : in /etc/passwd
ابزار خلاصه متن: wc
در wc
(Word Count) از دستور برای نمایش تعداد خطوط ، کلمات ، کاراکترها یا بایت ها در یک پرونده یا ورودی استفاده می شود. این یک ابزار ساده و در عین حال قدرتمند است که می توانید برای خلاصه کردن محتوای متن استفاده کنید.
این نحو آن است:
wc [OPTION] [FILENAME]
و در اینجا گزینه های آن وجود دارد:
-
-l
: تعداد خطوط را نشان می دهد. -
-w
: تعداد کلمات را نشان می دهد. -
-c
: تعداد بایت ها را نشان می دهد. -
-m
: تعداد کاراکترها را نشان می دهد (برای کاراکترهای چند بیت مفید است). -
-L
: طول طولانی ترین خط را نشان می دهد.
مثال:
wc Sample.txt # Displays line count, word count, and byte count in Sample.txt
wc -w Sample.txt # Displays number of words in Sample.txt
wc -l Sample.txt # Displays number of lines in Sample.txt
wc -L Sample.txt # Displays number of characters in longest line in Sample.txt
wc -c Sample.txt # Displays number of bytes in Sample.txt (Actual storage size)
wc -m Sample.txt # Displays number of characters in Sample.txt (Actual number of characters regardless of enoing)
# ABCD😄
wc -c above.txt # "ABCD" = 4 bytes + "😄" = 4 bytes. 4 + 4 = 8 bytes
wc -m above.txt # "ABC" = 4 + "😄" = 1 byte. 4 + 1 = 5 bytes
سخنان پایانی
در این مقاله ، ما اصول اولیه استفاده از VIM ، ویرایشگر متن قدرتمند و انعطاف پذیر را پوشش دادیم. ما با روش باز کردن پرونده در VIM شروع کردیم و سپس در مورد حالت های آن آموخته اید. شما همچنین یاد گرفتید که چگونه از طریق پرونده ها حرکت کنید ، متن را ویرایش کنید و از ویژگی هایی مانند جستجو و جایگزین برای صرفه جویی در وقت استفاده کنید. ما همچنین یک ابزار خلاصه مفید را مورد بررسی قرار دادیم.
اگر تازه وارد لینوکس هستید و می خواهید یک بنیاد قوی بسازید ، مقاله قبلی من را در جایی که اصول اولیه لینوکس را پوشش می دهم ، از جمله دستورات و نکات ضروری برای مبتدیان بررسی کنید. این یک نقطه شروع عالی برای تکمیل آنچه در اینجا درباره VIM آموخته اید!
تمرین این دستورات را ادامه دهید ، و به زودی آنها برای شما ماهیت دوم می شوند. تسلط با تکرار همراه است ، بنابراین به آزمایش و استفاده از این اصول در سناریوهای دنیای واقعی ادامه دهید.
برای مقالات بیشتر با ما همراه باشید. آماده شوید تا مهارت های RHEL خود را به سطح بعدی برسانید.
بیایید وصل شویم!
منتشر شده در 1404-02-05 00:07:13