در اینجا چند دستور کوچک اما مفید لینوکس، ترفندهای ترمینال و میانبرهایی آورده شده است که هنگام کار با خط فرمان لینوکس در وقت شما صرفه جویی می کند.
آیا تا به حال با لحظهای مواجه شدهاید که همکار شما با استفاده از دستورات ساده لینوکس برای کارهایی که شما چندین بار کلید میزنید را بسادگی انجام می دهد؟ و گفتید: «وای! نمیدانستم میتوان به این راحتی این کار را انجام داد».
در این مقاله، چند ترفند دستوری حرفهای لینوکس را به شما نشان میدهم که باعث صرفهجویی در وقت شما میشود. این نکات برای مبتدیان نیست. این احتمال وجود دارد که حتی کاربران باتجربه لینوکس نکات پنهانی را بیابند که علیرغم استفاده از لینوکس در تمام این سال ها از آنها بی اطلاع بودند.
ترفندهای جالب ترمینال لینوکس برای صرفه جویی در زمان و افزایش بهره وری
ممکن است شما هم تعدادی از این نکات دستوری لینوکس یا شاید همه آنها را بدانید. در هر صورت، می توانید ترفندهای مورد علاقه خود را در بخش نظرات به اشتراک بگذارید.
برخی از این نکات به نحوه پیکربندی Shell نیز بستگی دارد. شروع کنیم!
۰. استفاده از تب برای تکمیل خودکار
من با چیزی بدیهی و در عین حال مهم شروع می کنم: تکمیل دستور.
وقتی شروع به تایپ چیزی در ترمینال لینوکس میکنید، میتوانید کلید تب را فشار دهید و تمام گزینههای ممکن که با رشتهای که تاکنون تایپ کردهاید شروع میشوند را به شما پیشنهاد میدهد.
به عنوان مثال، اگر میخواهید فایلی به نام my_best_file_1.txt را کپی کنید، فقط میتوانید «cp m» را تایپ کنید و tab را بزنید تا گزینههای ممکن را ببینید.
۱. به آخرین دایرکتوری کاری برگردید
فرض کنید در یک مسیر دایرکتوری طولانی قرار می گیرید و سپس به دایرکتوری دیگری در مسیری کاملاً متفاوت می روید. و سپس متوجه می شوید که باید به دایرکتوری قبلی که در آن بودید برگردید. در این مورد، تنها کاری که باید انجام دهید این است که این دستور را تایپ کنید:
cd -
این شما به آخرین فهرست کاری منتقل می کند. دیگر نیازی به تایپ مسیر دایرکتوری طولانی یا کپی پیست نیست.
۲. به فهرست اصلی برگردید
این خیلی واضح است. میتوانید از دستور زیر برای انتقال به فهرست اصلی خود از هر نقطه در خط فرمان لینوکس استفاده کنید:
cd ~
با این حال، شما همچنین می توانید فقط از cd برای بازگشت به فهرست اصلی استفاده کنید:
cd
اکثر توزیعهای لینوکس مدرن پوسته را برای این دستور از قبل پیکربندی شده اند.
۳. فهرست محتویات یک دایرکتوری
حتماً از خود میپرسید که دستور فهرست کردن محتویات یک دایرکتوری چه ترفندی دارد. همه می دانند که از ls -l برای این منظور استفاده کنند.
و موضوع همین است. اکثر مردم از ls -l برای فهرست کردن محتویات دایرکتوری استفاده می کنند، در حالی که همین کار را می توان با دستور زیر انجام داد:
ll
باز هم، این بستگی به توزیعهای لینوکس و پیکربندی پوسته دارد، اما به احتمال زیاد بتوانید از آن در اکثر توزیعهای لینوکس استفاده کنید.
۴. اجرای چندین دستور در یک دستور
فرض کنید، باید چندین دستور لینوکس را یکی پس از دیگری اجرا کنید. آیا منتظر می مانید تا اولین دستور اجرا شود و سپس دستور بعدی را اجرا کنید؟
می توانید از “;” بعنوان جدا کننده استفاده کنید. به این ترتیب می توانید تعدادی دستور را در یک خط اجرا کنید. نیازی نیست منتظر بمانید تا دستورات قبلی کار خود را به پایان برسانند.
command_1; command_2; command_3
۵. اجرای چند دستور در یک فرمان تنها در صورتی که دستور قبلی موفقیت آمیز بوده باشد
در دستور قبلی مشاهده کردید که چگونه می توان چندین دستور را در یک دستور اجرا کرد تا در زمان صرفه جویی شود. اما اگر باید مطمئن شوید که دستورات خطا نمی خورند چه؟
موقعیتی را تصور کنید که می خواهید یک کد منبع را build کنید و سپس اگر موفق بود، make را اجرا کنید.
برای این مورد می توانید از جدا کننده && استفاده کنید. && تضمین می کند که دستور بعدی فقط زمانی اجرا می شود که دستور قبلی موفقیت آمیز باشد.
command_1 && command_2
یک مثال خوب از این دستور زمانی است که از sudo apt update && sudo apt upgrade برای ارتقای سیستم خود استفاده می کنید.
۶. به راحتی دستوراتی را که در گذشته استفاده کرده بودید جستجو و استفاده کنید
موقعیتی را تصور کنید که چند دقیقه/ساعت قبل از یک فرمان طولانی استفاده کرده اید و باید دوباره از آن استفاده کنید. مشکل این است که دیگر نمی توانید دستور دقیق را به خاطر بسپارید.
جستجوی معکوس در اینجا نجات دهنده شماست. با استفاده از یک عبارت جستجو می توانید دستور را در تاریخچه جستجو کنید.
فقط از کلیدهای ctrl+r برای شروع جستجوی معکوس استفاده کنید و بخشی از دستور را تایپ کنید. به تاریخچه نگاه می کند و دستوراتی را که با عبارت جستجو مطابقت دارند به شما نشان می دهد.
ctrl+r search_term
این دستور به طور پیش فرض، فقط یک نتیجه را نشان می دهد. برای مشاهده نتایج بیشتر مطابق با عبارت جستجوی خود، باید از ctrl+r بارها و بارها استفاده کنید. برای ترک جستجوی معکوس، فقط از Ctrl+C استفاده کنید.
توجه داشته باشید که در برخی از پوسته های Bash، می توانید از کلیدهای Page Up و Down نیز استفاده کنید.
۷. ترمینال لینوکس خود را از Ctrl+S تصادفی جدا کنید
احتمالاً عادت دارید از Ctrl+S برای ذخیره استفاده کنید. اما اگر از آن در ترمینال لینوکس استفاده کنید، یک ترمینال freez خواهید داشت.
نگران نباشید، دیگر لازم نیست ترمینال را ببندید. فقط از Ctrl+Q استفاده کنید و می توانید دوباره از ترمینال استفاده کنید.
ctrl+Q
۸. به ابتدا یا انتهای خطوط بروید
فرض کنید در حال تایپ یک فرمان طولانی هستید و در میانه راه متوجه می شوید که در ابتدا باید چیزی را تغییر می دادید. برای حرکت به ابتدای خط از چندین کلید جهتنمای چپ استفاده میکنید. و به همین ترتیب برای رفتن به انتهای خط.
البته در اینجا میتوانید از کلیدهای Home و End استفاده کنید، اما میتوانید از Ctrl+A برای رفتن به ابتدای خط و Ctrl+E برای رفتن به انتهای خط استفاده کنید.
من آن را راحت تر از استفاده از کلیدهای HOME و END، به خصوص در لپ تاپم می دانم.
۹. کل خط را از موقعیت مکان نما حذف کنید
در ترمینال لینوکس، اگر Ctrl+U را فشار دهید، همه چیز را از موقعیت مکان نما فعلی شما تا ابتدای خط حذف می کند.
به طور مشابه، اگر Ctrl+K را فشار دهید، همه چیز را از موقعیت مکان نما تا انتهای خط حذف می کند.
احتمالاً در تایپ رمز عبور اشتباه کرده اید؟ به جای استفاده از کلید backspace در تمام مسیر، به سادگی از Ctrl+U استفاده کنید و رمز عبور را دوباره تایپ کنید. شما می توانید بسیاری از کاربردهای دیگر را برای این میانبرها کشف کنید.
۱۰. خواندن یک فایل لاگ در زمان واقعی
در شرایطی که نیاز به تجزیه و تحلیل logها در حین اجرای برنامه دارید، می توانید از دستور tail با گزینه f استفاده کنید.
tail -f path_to_Log
همچنین میتوانید از گزینههای grep معمولی برای نمایش تنها خطوطی استفاده کنید که برای شما معنادار هستند:
tail -f path_to_log | grep search_term
این کار حتی اگر فایل لاگ حذف شده باشد، ادامه پیدا می کند. بنابراین اگر فایل log دوباره ایجاد شود، tail به ثبت نتایج در خروجی ادامه میدهد.
۱۱. خواندن لاگ های فشرده بدون استخراج
لاگ های سرور معمولاً برای صرفه جویی در فضای دیسک فشرده می شوند و برای توسعه دهنده یا sysadmin تجزیه و تحلیل logها را مشکل می کند. ممکن است مجبور شوید آن را به دایرکتوری محلی خود کپی کنید و سپس برای دسترسی به فایلها آن را استخراج کنید.
خوشبختانه دستورات z شما را در چنین شرایطی نجات می دهد. دستورات z جایگزینی از دستورات معمولی را ارائه می دهند که در چنین شرایطی به کمک شما می آیند.
از دستوراتی مانند zless، zcat، zgrep و غیره استفاده کنید و نیازی به استخراج فایل های فشرده ندارید.
۱۲. برای خواندن فایل ها از less استفاده کنید
برای دیدن محتویات یک فایل، cat بهترین گزینه نیست به خصوص اگر فایل بزرگی باشد. دستور cat کل فایل را روی صفحه نمایش شما نمایش می دهد.
less path_to_file
۱۳. از آخرین مورد دستور قبلی با !$ دوباره استفاده کنید
استفاده از آرگومان دستور قبلی در بسیاری از موقعیت ها مفید است.
فرض کنید که باید یک دایرکتوری ایجاد کنید و سپس وارد دایرکتوری تازه ایجاد شده بروید. در آنجا می توانید از گزینه های !$ استفاده کنید.
mkdir test_dir
cd $!
یک راه بهتر برای انجام همین کار استفاده از alt+ است. از تکرار این کلیدهای ترکیبی برای جابجایی بین گزینه های آخرین دستورات استفاده کنید.
۱۴. از دستور قبلی در دستور فعلی با !!
می توانید کل دستور قبلی را با !! فراخوانی کنید. این به ویژه زمانی مفید است که باید دستوری را اجرا کنید و متوجه شوید که به حقوق ریشه نیاز دارد.
یک sudo سریع!! در اینجا تعداد زیادی کلید را ذخیره می کند.
apt update
sudo !!
۱۵. استفاده از نام مستعار برای رفع اشتباهات املایی
احتمالاً از قبل می دانید که دستور مستعار در لینوکس چیست . کاری که می توانید انجام دهید این است که از آنها برای رفع اشتباهات املایی استفاده کنید.
به عنوان مثال، ممکن است اغلب grep را به صورت gerp اشتباه تایپ کنید. اگر یک نام مستعار در bashrc خود به این شکل قرار دهید:
alias gerp=grep
به این ترتیب دیگر لازم نیست دستور را دوباره تایپ کنید.
۱۶. در ترمینال لینوکس کپی و پیست کنید
این یکی کمی مبهم است زیرا به توزیع های لینوکس و برنامه های ترمینال بستگی دارد. اما به طور کلی، شما باید بتوانید با این میانبرها در ترمینال پیست کنید :
- متن را برای کپی انتخاب کنید و برای پیست کلیک راست کنید (در Putty و سایر کلاینت های Windows SSH کار می کند)
- متن را برای کپی و کلیک وسط (دکمه اسکرول روی ماوس) را برای پیست انتخاب کنید
- Ctrl+Shift+C برای کپی و Ctrl+Shift+V برای پیست
۱۷. یک فرمان/فرآیند در حال اجرا را بکشید
این یکی شاید خیلی واضح باشد. اگر دستوری در پیشزمینه اجرا میشود و میخواهید از آن خارج شوید، میتوانید Ctrl+C را فشار دهید تا آن فرمان در حال اجرا متوقف شود .
۱۸. استفاده از دستور yes برای دستورات یا اسکریپت هایی که نیاز به پاسخ تعاملی دارند
اگر برخی از دستورات یا اسکریپت ها نیاز به تعامل کاربر دارند و می دانید که باید Y را هر بار که نیاز به ورودی دارد وارد کنید، می توانید از دستور Yes استفاده کنید.
فقط به روش زیر از آن استفاده کنید:
yes | command_or_script
۱۹. یک فایل را بدون حذف آن خالی کنید
اگر فقط می خواهید محتویات یک فایل متنی را بدون حذف خود فایل خالی کنید، می توانید از دستوری مشابه این استفاده کنید:
> filename
۲۰. پیدا کنید که آیا فایل های حاوی متن خاصی وجود دارد یا خیر
راه های مختلفی برای جستجو و یافتن در خط فرمان لینوکس وجود دارد. اما در مواردی که فقط می خواهید ببینید آیا فایل هایی وجود دارند که حاوی متن خاصی هستند، می توانید از این دستور استفاده کنید:
grep -Pri Search_Term path_to_directory
با این حال، من به شدت توصیه می کنم که دستور find استفاده کنید.
۲۱. استفاده از کمک با هر دستور
من این مقاله را با یک ترفند واضح و در عین حال ضروری دیگر، با استفاده از کمک یک دستور یا ابزار خط فرمان به پایان میبرم.
تقریباً همه ابزارهای دستور و خط فرمان با یک صفحه راهنما ارائه می شوند که نحوه استفاده از دستور را نشان می دهد. اغلب استفاده از راهنما، کاربرد اصلی ابزار/دستور را به شما می گوید.
فقط از این روش استفاده کنید:
command_tool --help
ترفندهای خط فرمان لینوکس مورد علاقه شما؟
من عمداً دستوراتی مانند fuck را وارد نکرده ام زیرا این دستورات استانداردی نیستند که در همه جا پیدا کنید. ترفندهای مورد بحث در اینجا باید تقریباً در تمام توزیعهای لینوکس و پوسته بدون نیاز به نصب ابزار جدید قابل استفاده باشند.
همچنین پیشنهاد می کنم از دستور مستعار در لینوکس برای جایگزینی دستورات پیچیده با دستورات ساده استفاده کنید. زمانی زیادی را ذخیره میکند.
می دانم که ترفندهای دستوری لینوکس بیشتری برای صرفه جویی در وقت در ترمینال وجود دارد. چرا تجربیات خود در لینوکس به اشتراک نمی گذارید و بهترین ترفند خود را با سایر اعضای سایت در اینجا به اشتراک نمی گذارید؟ بخش نظرات زیر در اختیار شماست.
افزودن نظر