گشودن قدرت لینوکس: دستورات ضروری و ابزارهای افزایش بهره‌وری

این راهنما مجموعه‌ای از دستورات قدرتمند لینوکس و ابزارهای افزایش بهره‌وری را معرفی می‌کند که برای بهبود کارایی و روان‌سازی کارهای مختلف طراحی شده‌اند. این ابزارها، شامل مواردی برای نظارت بر سیستم، مدیریت فایل، شبکه‌سازی و بهره‌گیری از هوش مصنوعی برای ساده‌سازی عملیات خط فرمان هستند.

image

خلاصه نکات کلیدی

  • NCDU: تحلیل مصرف فضای دیسک

    NCDU مصرف فضای دیسک را شناسایی می‌کند و یک رابط بصری و تعاملی ارائه می‌دهد که از `df` و `du` بهتر است. کاربران می‌توانند فایل‌ها را حذف کرده و مستقیماً در داخل ابزار، به جزئیات دایرکتوری‌ها وارد شوند.

  • Duff: گزارش‌دهی مصرف درایو

    Duff اطلاعات مصرف درایو را در قالبی بصری جذاب ارائه می‌دهد و به عنوان نسخه‌ای بهبود یافته از دستور `df` عمل می‌کند.

  • ripgrep (rg): جستجوی سریع متن

    با قدرت Rust، ریپ‌گرپ (rg) جایگزینی به طور قابل توجهی سریع‌تر از `grep` برای یافتن سریع خطاها در لاگ‌ها، مکان‌یابی توابع پایتون یا شناسایی فایل‌هایی است که به الگوهای خاصی مانند کلیدهای API اشاره دارند.

  • Mosh: پایداری نشست‌های راه دور

    موش جایگزینی قدرتمند برای SSH ارائه می‌دهد؛ با حفظ اتصال نشست حتی زمانی که اتصالات شبکه از بین می‌روند یا هنگام جابجایی بین شبکه‌های Wi-Fi و سلولی. برای اتصالات پایدار، نصب آن هم در کلاینت و هم در سرور راه دور الزامی است.

  • lshw: اطلاعات سخت‌افزار

    دستور `lshw` جزئیات جامع منابع سخت‌افزاری یک سیستم شامل CPU، حافظه، کارت‌های شبکه و دیسک‌ها را نمایش می‌دهد. اجزای خاص را می‌توان با استفاده از فیلترهایی مانند `lshw -C cpu` پرس‌وجو کرد.

  • MTR: نظارت بر تأخیر شبکه و از دست رفتن بسته‌ها

    MTR قابلیت‌های `ping` و `traceroute` را ترکیب می‌کند و تحلیلی زنده و مرحله به مرحله از تأخیر شبکه و از دست رفتن بسته‌ها ارائه می‌دهد.

  • FD: یافتن فایل پیشرفته

    FD جایگزینی برای دستور `find` است که تنظیمات پیش‌فرض بهبود یافته‌ای از جمله جستجوی بازگشتی، عدم حساسیت به حروف کوچک و بزرگ، نادیده گرفتن فایل‌ها/دایرکتوری‌های پنهان و خروجی رنگی را ارائه می‌دهد که اغلب منجر به اجرای سریع‌تر می‌شود.

  • FZF (FuzzyFinder): فیلتر کردن تعاملی

    FZF امکان فیلتر کردن تعاملی هر لیست یا ورودی لوله‌گذاری شده را فراهم می‌کند، که آن را برای کارهایی مانند جستجو در تاریخچه دستورات یا انتخاب تعاملی فرآیندها برای خاتمه دادن، قدرتمند می‌سازد.

  • Ranger: مدیریت فایل ترمینال

    رنجر به عنوان یک مدیریت فایل گرافیکی در داخل ترمینال عمل می‌کند، که دارای کلیدهای میانبر شبیه به Vim، قابلیت‌های تغییر نام گروهی و پیش‌نمایش فایل‌ها است.

  • Z Oxide (z): ناوبری هوشمند دایرکتوری

    Z Oxide (z) جایگزین دستور استاندارد `cd` می‌شود و یک تجربه ناوبری بخشنده‌تر و هوشمندتر را با رتبه‌بندی دایرکتوری‌های پرکاربرد و اخیراً استفاده شده ارائه می‌دهد. این ابزار عادت‌های کاربر را یاد می‌گیرد، امکان پرش سریع به دایرکتوری‌ها با نام‌های جزئی را فراهم می‌کند و برای انتخاب تعاملی با FZF ادغام می‌شود.

  • Exa: فهرست‌بندی مدرن دایرکتوری

    Exa به عنوان جایگزینی مدرن برای `ls` عمل می‌کند و کدگذاری رنگی برتر، نمای درختی داخلی و قابلیت نمایش آیکون‌ها برای انواع فایل‌ها را ارائه می‌دهد.

  • Glances: داشبورد آمار سیستم

    گلنس یک داشبورد جامع برای نظارت سریع بر آمار سیستم ارائه می‌دهد. این ابزار از گزینه‌های مختلفی، از جمله اجرای به عنوان وب سرور یا API برای نظارت از راه دور، پشتیبانی می‌کند.

  • IO top: نظارت بر ورودی/خروجی دیسک

    IO top یک لیست به سبک `top` از فرآیندهایی که بیشترین ورودی/خروجی دیسک را فعالانه مصرف می‌کنند، ارائه می‌دهد و اطلاعات را به صورت لحظه‌ای به‌روزرسانی می‌کند.

  • stat: جزئیات فایل

    دستور `stat` جزئیات گسترده‌ای در مورد یک فایل، از جمله تاریخ ایجاد و شماره inode آن را نشان می‌دهد. با استفاده از گزینه `-f`، می‌تواند اطلاعات خاص سیستم فایل مانند ID سیستم فایل را نیز نمایش دهد.

  • Dstack: نمایش یکپارچه عملکرد سیستم

    Dstack یک نمای زمانی ترکیبی از معیارهای حیاتی سیستم مانند مصرف CPU، RAM، دیسک، شبکه و حافظه را ارائه می‌دهد. این ابزار قابلیت‌های `vmstat`، `iostat`، `ifstat` و `netstat` را در یک ابزار واحد ادغام می‌کند.

  • watch: تکرار دستور

    دستور `watch` به طور خودکار هر دستور مشخص شده را در فواصل زمانی تعریف شده توسط کاربر مجدداً اجرا می‌کند، که برای نظارت مداوم، مانند ردیابی عملکرد GPU با `nvidia-smi` مفید است.

  • Progress: نظارت بر پیشرفت فرآیند

    Progress وضعیت و پیشرفت دستورات در حال اجرا، مانند عملیات `secure copy` را نمایش می‌دهد و می‌تواند چندین دستور را به طور همزمان نظارت کند.

  • Dog: جستجوی پیشرفته DNS

    Dog یک جایگزین بهبود یافته برای `dig` برای جستجوهای DNS است که دارای خروجی واضح و رنگی، پشتیبانی از DNS over TLS و قابلیت خروجی دادن نتایج در فرمت JSON است.

  • Term Shark: تحلیلگر بسته‌های ترمینال

    ترم شارک یک رابط کاربری ترمینال برای `tshark` فراهم می‌کند که امکان تحلیل تعاملی بسته‌ها، فیلتر کردن بر اساس پروتکل‌هایی مانند DNS و بررسی فایل‌های pcap را می‌دهد.

  • lsof -i: نگاشت پورت-فرآیند

    دستور `lsof -i:<port>` فرآیندی را شناسایی می‌کند که صاحب یک پورت شبکه خاص، مانند پورت 22 یا 80 است یا در حال حاضر از آن استفاده می‌کند.

  • IP calc: ماشین‌حساب ساب‌نت

    IP calc یک ابزار خط فرمان برای محاسبات سریع ساب‌نت است که محدوده‌های شبکه، ماسک‌ها و اطلاعات وایلدکارد را بر اساس نماد CIDR ارائه می‌دهد.

  • Wormhole: انتقال امن فایل

    وُرم‌هول انتقال فایل‌های رمزگذاری شده همتا به همتا و سرتاسری را با یک دستور واحد تسهیل می‌کند. این ابزار یک کد منحصر به فرد برای گیرنده ایجاد می‌کند و از انتقال مستقیم یا از طریق سرور برای سازگاری با فایروال پشتیبانی می‌کند.

  • systemd-analyze blame: تحلیل عملکرد بوت

    `systemd-analyze blame` سرویس‌هایی را شناسایی می‌کند که بیشترین سهم را در زمان راه‌اندازی سیستم در آخرین بوت دارند.

  • systemd-analyze critical-chain: تحلیل وابستگی بوت

    `systemd-analyze critical-chain` مسیر بحرانی وابستگی‌های systemd را برجسته می‌کند و به شناسایی گلوگاه‌های ناشی از مقداردهی اولیه ترتیبی در هنگام بوت کمک می‌کند.

  • procs: نمایشگر مدرن فرآیند

    Procs جایگزینی کاربرپسندتر و زیباتر برای `ps` ارائه می‌دهد، که امکان مرتب‌سازی بر اساس مصرف CPU و نمایش فرآیندها در نمای درختی را فراهم می‌کند.

  • Lazy Docker: مدیریت تعاملی داکر

    Lazy Docker یک رابط کاربری ترمینال تعاملی برای مدیریت جامع کانتینرها، ایمیج‌ها و سایر منابع داکر از خط فرمان فراهم می‌کند.

  • Rsync: همگام‌سازی کارآمد فایل

    Rsync یک ابزار هوشمند برای انتقال فایل است که فقط تفاوت‌ها (دلتا-تنها) را همگام‌سازی می‌کند، انتقال‌های قطع شده را از سر می‌گیرد و دایرکتوری‌ها را از طریق SSH منعکس می‌کند، که آن را برای فایل‌ها و دایرکتوری‌های بزرگ ایده‌آل می‌سازد.

  • Shred: حذف امن فایل

    برخلاف `rm` که فقط یک فایل را از حالت لینک خارج می‌کند، `shred` قبل از حذف، چندین بار فایل را به طور امن بازنویسی می‌کند و به طور موثر تلاش‌های بازیابی اطلاعات را خنثی می‌سازد.

  • Moreutils (ts, errorno, ifdata, vidir, vip): ابزارهای گسترده خط فرمان

    بسته `moreutils` چندین ابزار مفید را فراهم می‌کند: `ts` برچسب‌های زمانی را به خروجی دستور اضافه می‌کند؛ `errorno` شماره‌های خطا را توضیح می‌دهد؛ `ifdata` اطلاعات رابط شبکه را به صورت ساده شده ارائه می‌دهد؛ `vidir` امکان ویرایش نام دایرکتوری‌ها در یک ویرایشگر متن را می‌دهد؛ و `vip` یک ویرایشگر متن را به یک پایپ‌لاین یونیکس وارد می‌کند تا داده‌های لوله‌گذاری شده را اصلاح کند.

  • UNP: استخراج‌کننده جامع آرشیو

    UNP استخراج آرشیو را با حدس زدن خودکار نوع آرشیو و اجرای دستور فشرده‌سازی مناسب ساده می‌کند، و نیاز به به خاطر سپردن ابزارهای خاص برای فرمت‌های مختلف را از بین می‌برد.

  • JQ: پردازشگر داده JSON

    JQ به عنوان یک ابزار قدرتمند خط فرمان برای پرس‌وجو و تبدیل خروجی JSON عمل می‌کند، که امکان استخراج و دستکاری پیچیده داده‌ها را با دستورات تک‌خطی مختصر فراهم می‌آورد.

  • Taskwarrior: مدیریت وظایف CLI

    Taskwarrior یک ابزار رابط خط فرمان برای مدیریت وظایف است که به کاربران امکان اضافه کردن، فهرست کردن، علامت‌گذاری وظایف به عنوان تکمیل شده و دریافت پیشنهاداتی در مورد وظایف فوری را بدون ترک ترمینال می‌دهد.

  • Asciinema: ضبط کننده نشست ترمینال

    آسکینما نشست‌های ترمینال را در فایل‌های 'cast' کوچک و مبتنی بر متن ضبط می‌کند که می‌توانند پخش، مکث شده و متن از آنها مستقیماً در داخل ترمینال کپی شود. یک سرور خودمیزبان می‌تواند این ضبط‌ها را ذخیره کند.

  • Asciinema (تبدیل به GIF): تبدیل ضبط ترمینال به GIF

    یک ابزار مکمل از آسکینما، نشست‌های ترمینال ضبط شده را به فایل‌های GIF متحرک تبدیل می‌کند که برای نمایش‌های سریع مفید است.

  • Fabric: ادغام هوش مصنوعی برای CLI

    Fabric امکان تعامل با مدل‌های هوش مصنوعی را مستقیماً از خط فرمان فراهم می‌کند و به کاربران اجازه می‌دهد کارهایی مانند خلاصه‌سازی تاریخچه دستورات، تحلیل لاگ‌های سیستم یا دریافت توصیه‌هایی برای پورت‌های باز را انجام دهند.

  • Ollama: تولید دستور AI محلی

    Ollama به کاربران امکان می‌دهد مدل‌های هوش مصنوعی را به صورت محلی اجرا کنند تا در ساخت دینامیک دستورات خط فرمان کمک کنند، مانند تولید دستوراتی برای یافتن مصرف فضای دیسک یا ساخت دستورات `mount`.

تسلط بر این ابزارها، خط فرمان را به یک ابرقدرت تبدیل کرده و به طور چشمگیری بهره‌وری و کنترل بر سیستم لینوکس را افزایش می‌دهد.

زیر جزئیات

دستورهدفویژگی اصلی
NCDUتحلیل فضای دیسکتحلیل بصری و تعاملی مصرف دیسک با قابلیت حذف.
ripgrep (rg)جستجوی سریع متنمبتنی بر Rust، به طور قابل توجهی سریع‌تر از `grep` برای جستجوهای پیچیده.
Moshنشست راه دورحفظ نشست‌های پایدار شبیه SSH با وجود تغییرات شبکه یا قطع اتصال.
FZF (FuzzyFinder)فیلتر کردن تعاملیجستجوی فازی و فیلتر کردن هر لیستی، قدرتمند برای زنجیره‌سازی دستورات.
Z Oxide (z)ناوبری دایرکتورییادگیری عادت‌های دایرکتوری برای دستورات `cd` سریع‌تر و پرش‌های هوشمندانه.
Exaفهرست‌بندی دایرکتوریجایگزین مدرن `ls` با رنگ‌های بهتر، نمای درختی و آیکون‌ها.
Glancesنظارت بر سیستمداشبورد جامع آمار سیستم با قابلیت‌های وب/API.
Dogجستجوی DNSجایگزین بهبود یافته `dig` با خروجی رنگی، DNS over TLS و پشتیبانی JSON.
Term Sharkتحلیل بستهرابط کاربری ترمینال برای `tshark` جهت بازرسی تعاملی بسته‌های شبکه.
Wormholeانتقال امن فایلانتقال فایل‌های رمزگذاری شده همتا به همتا و سرتاسری با یک دستور ساده.
systemd-analyzeتحلیل عملکرد بوتشناسایی سرویس‌های کند (`blame`) و وابستگی‌های بحرانی (`critical-chain`) در طول بوت.
Lazy Dockerمدیریت داکررابط کاربری ترمینال تعاملی برای مدیریت جامع کانتینر و ایمیج داکر.
Shredحذف امن فایلبازنویسی امن فایل‌ها چندین بار برای جلوگیری از بازیابی اطلاعات قبل از حذف.
JQپردازش JSONابزار قدرتمند خط فرمان برای پرس‌وجو و تبدیل داده‌های JSON.
Asciinemaضبط نشست ترمینالضبط نشست‌های ترمینال برای پخش، کپی متن و تبدیل به GIF.
Fabric / Ollamaادغام هوش مصنوعیادغام هوش مصنوعی در CLI برای تولید دستور، خلاصه‌سازی و تحلیل.

تگ ها

لینوکس
بهره‌وری
قدرت
خط‌فرمان
هوش
اشتراک گذاری