آیا خط فرمان همه گنو/لینوکس‌ها شبیه همدیگه است؟

این سوال هوتن است و احتمالا خیلی‌های دیگه؛ همچنین آدم‌ها می‌خوان بدونن که تفاوت‌ توزیعهای لینوکس‌های مختلف مثل اوپن سوزه، فدورا، اوبونتو، دبیان و … چیه.

من مشابه این بحث رو مفصل در جاهای مختلفی توضیح دادم. مثلا در اینجا که می‌گه توزیع لینوکس چیه و اینجا که می‌گه چطوری یک توزیع رو انتخاب کنین؛ البته دقت کنین که اون کتاب تموم نشده و هنوز برای انتشار عمومی آماده نیست ولی خب یک جایی بالاخره باید لینک داد دیگه.

commandline

ااما برای تکمیل بحث، باید بگم که توزیع عملا ترکیبی از این‌ها است:

  • نرم افزارهای پیش فرضی که آدم های پشت توزیع انتخاب می‌کنن
  • منابع و مخازن اون توزیع یعنی برنامه‌هایی که می‌تونین بدون دردسر و با یک کلیک یا دستور نصب کنین
  • گرافیک، لوگو و …
  • دستورات خاص اون توزیع که خیلی وقت‌ها مربوط به تنظیمات یا مدیریت بسته‌های نرم افزاری می‌شن؛ مثلا توی دبیان apt برای نصب برنامه‌ها استفاده می‌شه، در فدورا yum و در سیستم‌های مبتنی بر آرچ pacman. مثال خوب دیگه می‌تونه مجموعه نرم افزارهای کنترل و مدیریت yast در اوپن سوزه.

حالا بخش عظیمی از چیزی که ما توی کامند لاین استفاده می‌کنیم و ازشون لذت می‌بریم محصولات پروژه ای به اسم gnu هستن که تقریبا در تمام توزیع‌ها نصب می‌شن و به همین خاطر بهتره به جای اسم لینوکس که فقط یک هسته است، از گنو/لینوکس که یک سیستم عامل کامله استفاده کنیم. حالا رابط ما با این دستورات محیطی ست به اسم پوسته‌ (یا شل‌ یا خط فرمان که همون صفحه سیاه با نوشته های سبز بالا است). اکثر پوسته‌ها یا دقیقا برنامه ای به اسم bash هستن یا چیزهایی تا حد خیلی زیادی مشابه با اون و در نتیجه وقتی توی خط فرمان یک لینوکس هستین، دستورات جالبش تقریبا در همه جا یکسانه و ترکیبی از دستورات پوسته و دستورات پروژه گنو.

نتیجه؟ از هر لینوکسی که استفاده می‌کنین، نود درصد کارهاتون مشابه است و اوه ده درصد هم مربوط می‌شه به عملیات بسیار مرتبط با اون توزیع مثل نصب و حذف برنامه‌ها یا دسترسی به کارت‌های شبکه و تنظیمات پیش فرض و اینجور چیزها. پس با هر توزیعی که کار می‌کنین و پشت هر توزیعی که می‌شینین، می‌تونین هک خوشحالی داشته باشین!

  • چیزی که برای من جالبه اینه که اکثر دستورات با مک هم یکسان هستن!! و این عالیه…
    اما چیزی که برام سواله اینه:
    تفاوت کرت های مختلف، در چیه؟ کرت های بلاک(تو پر) بلاک تو خالی، یه خط ایستاده و یه ـ اینا هر کدوم چه تفاوتی دارن؟ فقط ظاهره یا چی؟ چون ظاهرا همشون رفتار یکسانی دارن! :) لااقل تا جایی که من تست کردم!!

    • Ali

      هسته ی اصلی مک یه سیستم عامل به اسم داروینه که محصول خود اپل هست. البته بابابزرگ این داروین از خانواده ی BSD هست و تا حد زیادی با استانداردهای POSIX هماهنگه. همون استانداردی که لینوکس و گنو هم ازش استفاده میکنن. واسه همین اصولن ماهیت ترمینال توی مک شبیه لینوکسه و خیلی دستوراشون شبیه هستن، ولی چونکه ابزارهای گنو مستقیما و به صورت دیفالت نصب نیست باید بعضی چیزا رو دستی نصب کرد.
      در مورد کرت (؟ کراسر بهش میگن فکر کنم) هم درست فکر میکنی. البته بعضی جاها یه مقدار فرق دارن، مثلن اینکه ممکنه یه جا وقتی بک اسپیس میزنی اون کراسر توپر همون کاراکتری که روش هست رو پاک کنه، ولی کراسر توخالی کاراکتر قبلی رو پاک کنه. در همین حد جزیی. ولی اصولن فرقی ندارن و انتخابش بسته به سلیقه ی کاربره.

  • Saeid™

    10 آذر روز برنامه نویس مبارک
    http://programmerday.ir/

    • jadijadi

      به شما هم مبارک (:

  • kasra_mp

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

    https://en.wikipedia.org/wiki/Comparison_of_command_shells

    • Alex Fire

      با نصب oh-my-zsh بهتر هم میشه

  • س

    چند وقت پیش CentOS 7 نصب کردم و با کمال تعجب و تاسف نصف دستورات مهم و بدیهی همیشگی از ifconfig تا netstat کار نمی‌کرد! (یعنی netstat اینقدر جهانیه که تو ویندوز هم هست ها، ولی تو این لینوکس نیست!)
    درسته که می‌شه اینها رو نصب کرد (جلل خالق، تصور کن ifconfig نیاز به نصب داشته باشه!)؛ ولی به نظر من که به سرشون زده؛ دقیقا کاریه که Novel توی یکی از ورژن‌هاش کرد و تقریبا به آخرین نسخه‌اش بدل شد.

    • jadijadi

      س عزیز انتظار می‌ره مدیر سیستم ها شروع کنن به استفاده از نسل جدید دستورات و سنت او اس با جرات سعی کرده این رو جا بندازه. منم برام عجیب و سخت شده خیلی. ولی دستورات مهمی که باید یاد بگیریم firewalld به جای iptables و ip به جای ifconfig و دوستاش است.

  • Aref

    جادی جان باید بگم linuxbook.ir یه حرکت عالی هست! از دیشب دارم یک نفس کلشو می‌خونم و باید بگم مفیدترین بخشش «زندگی حرفه‌ای» هست!
    واقعا جالبه، به‌خصوص قسمت‌هایی که سعی داره آدم‌ها رو از رویاپردازی بیخودی و بی‌جهت دور کنه!

    ممنون که هستی!

    • jadijadi

      مرسی عارف عزیز از روحیه (: این کتاب قراره تغییرات خیلی زیادی بکنه. بخش های لینوکس حذف بشن و بخش های مربوط به زندگی زیاد بشن. کتاب لینوکس نباشه و بشه کتاب زندگی گیک ها (:

      • Aref

        امیدوارم در این راه موفق باشی جادی جان!

  • hatef

    چطور توی ترمینال فارسی رو میشه درست نوشت؟ مثل چیزی که توی اسکرین شات هست

    • ali soleimanidehdivan

      نمیدونم جادی از چی استفاده میکنه ولی من از https://github.com/behdad/bicon استفاده میکنم