دستورات مهم و کاربردی لینوکس که باید بدانیم

در این مستند در ابتدا دستورات مهم و پرکاربرد لینوکس را به صورت مختصر و بدون توضیحات اضافه معرفی و سپس نکات و ترفندهای جذاب استفاده از ترمینال را ارائه می‌کنیم.دستورات مهم و کاربردی لینوکسدستور lsمشاهده لیست فایل‌ها و دایرکتوری‌هامشاهده لیست همه‌ی فایل‌ها و دایرکتوری‌ها (حتی فایل‌های مخفی)مشاهده فایل‌ها و دایرکتوری‌ها با جزئیاتدستور llنام مستعار (alias) برای ls -l است و به جای آن می‌تواند استفاده شود.دستور cdتغییر دایرکتوریدستور pwdمشاهده مسیر دایرکتوری جاریدستور mkdirساخت دایرکتوریدستور touchساخت فایلدستور rmحذف فایلحذف فایل و فولدرحذف فایل و فولدر بدون چون و چرا (استفاده از این دستور خطرناک است و پیشنهاد می‌شود فقط در صورت نیاز و با دقت بالا استفاده شود)دستور cpکپی فایل یا دایرکتوریدستور mvتغییر نام یا جابجایی یک فایل یا دایرکتورینقطه «.» به معنای مسیر جاری و «..» به معنای مسیر والد مسیر جاری می‌باشد.دستور rsyncروش دیگری برای کپی اطلاعات که از جذابیت و کارایی بیشتری از cp برخوردار است.دستور wمشاهده آپ تایم سیستم، لود آن و یوزرهایی که به سیستم لاگین هستند.دستور dfمشاهده وضعیت فایل سیستم‌ها (h- برای قابل فهم‌تر شدن اندازه‌ها استفاده می‌شود)مشاهده وضعیت فایل سیستم‌ها به همراه نوع فایل سیستمدستور lsblkمشاهده بلاک دیوایس‌هادستور viایجاد یک فایل متنی با استفاده از ویرایشگر قدرتمند viدستور catنمایش فایل متنیدستور duنمایش فضای دیسک استفاده شده توسط فایل‌ها و دایرکتوری‌ها در مسیر مورد نظرمشاهده حجم فایل‌ها و دایرکتوری‌هادستور headنمایش خطوط ابتدایی فایل (پیش فرض: ۱۰ خط)نمایش ۴ خط ابتدای فایلدستور tailنمایش خطوط انتهایی فایل (پیش فرض: ۱۰ خط)نمایش ۴ خط انتهایی فایلچک کردن آنلاین آخرین لاگ‌های سیستمدستور journalctl -fچک کردن آنلاین آخرین لاگ‌های سیستمدستور dateنمایش تاریخدستور hostnameنمایش نام هاستدستور hostnamectlنمایش نام host و انجام تنظیمات مربوطهتغییر نام هاستدستور whereisپیدا کردن مسیر یک دستور (در این مثال دستور hostnamectl)دستور grepبرای پیدا کردن یک متن یا رشته خاص در یک فایل یا دایرکتوری استفاده می‌شود.در این مثال خطوطی را در فایل passwd پیدا می‌کند که در آن‌ها root وجود داشته باشد.نمایش فایل‌ها و دایرکتوری‌هایی که در آن‌ها di وجود دارد.نمایش فایل‌ها و دایرکتوری‌هایی که در آن‌ها di (با حروف بزرگ یا کوچک) وجود دارد.دستور unameنمایش hostname، اطلاعات مربوط به کرنل و غیرهدستور historyنمایش دستورات اجرا شدهنمایش دستورات اجرا شده (که در آن‌ها df وجود دارد).دستور adduserساخت یوزردستور passwdتنظیم پسورد برای یوزردستور suتغییر یوزر جاریدستور userdelپاک کردن یوزرپاک کردن یوزر به همراه فایل دایرکتوری home یوزر و محتویات آندستور ipیکی از مهم‌ترین ابزارهای مدیریت شبکه در لینوکس است که قابلیت‌های بسیار زیادی از جمله، مانیتور و پیکربندی وضعیت کارت‌های شبکه، آدرس IP، جدول مسیریابی و … را دارد.مشاهده آدرس‌های IP تنظیم شده روی سیستم.تنظیم آدرس IP روی اینترفیس به صورت موقت.دستور pingتست ارتباط با یک نود در شبکه.دستور ping در لینوکس به صورت پیش‌فرض در خواست‌های echoای که جوابی برای آن‌ها نیامده را نشان نمی‌دهد، برای حل این مشکل از O- استفاده می‌کنیم.اجرای دستور ping با دو درخواست echoدستور ethtoolمشاهده وضعیت فیزیکی کارت شبکه از جمله اتصال یا عدم اتصال فیزیکی آندستور netstatنمایش پورت های TCP که در حالت Listening قرار دارند به همراه پروسه‌های مربوطهنمایش پورت های TCP و UDP که در حالت Listening قرار دارند به همراه پروسه‌های مربوطه.نمایش پورت های TCP که در حالت Listening قرار دارند و همچنین سشن‌های establish شده TCP به همراه پروسه‌های مربوطه.دستور freeمشاهده وضعیت رم سیستمدستور findپیدا کردن فایل‌ها یا دایرکتوری‌هایی که نام آن‌ها test است.پیدا کردن فایل‌ها یا دایرکتوری‌هایی که ابتدای نام آن‌ها test است.پیدا کردن فایل‌ها یا دایرکتوری‌هایی که در آن‌ها test (با حروف بزرگ یا کوچک) وجود دارد.دستور topمشاهده لیست پروسه‌های فعال سیستم و مانیتور کردن سیستم با جزئیات بیشتر.دستور lsofمشاهده‌ی فایل‌های باز، پورت‌های شبکه، پروسه‌های فعال و غیرهمثال زیر فایل‌های باز در مسیر مورد نظر را نشان می‌دهد.دستور sudoاجرای دستوراتی که نیاز به دسترسی root دارند در یک یوزر غیر rootدستور tarآرشیو کردن و همچنین فشرده سازی فایل‌ها.در این مثال آرشیو کردن فایل‌ها با استفاده از tar انجام شده است.استخراج یا extract آرشیودستور chmodتغییر مجوز فایل‌ها و دایرکتوری‌ها (در این مثال مجوز اجرا به فایل داده می‌شود).دستور chownتغییر مالکیت یک فایلدستور sleepمکث به مدت چند ثانیه (اینجا ۱۰۰۰ ثانیه) که در اسکریپت‌ها استفاده می‌شود، البته اینجا برای تست استفاده شده.اجرای یک پروسه در پس زمینه با استفاده از &دستور psنمایش پروسه‌های فعال (که در اسم آن‌ها sleep وجود دارد).دستور pgrepنمایش PID پروسه‌های در حال اجرا به روش‌های متفاوت.دستور killارسال سیگنال kill به پروسه و بستن آن.دستور wgetدانلود فایلدستور manراهنمای استفاده از دستورات (در اینجا مشاهده راهنمای wget).دستور echoانتقال دیتا به یک فایل یا نمایش متن در ترمینال.$ برای نمایش متغیر به کار می‌رود (در اینجا متغیر USER).دستور clearپاک کردن ترمینالدستور typeنمایش نوع دستورنکات و ترفندهای استفاده از ترمینالکلید Tabاستفاده از کلید Tab برای تکمیل کامند و همچنین مسیر بسیار مفید است و استفاده از آن پیشنهاد می‌شود.کلیدهای CTRL + Rاجرای دستورات اخیر به این صورت که Ctrl + R را فشار می‌دهیم و بعد قسمتی از دستور را می‌نویسیم، در این حالت آخرین دستور اجرا شده، که همه یا قسمتی از، متن نوشته شده در آن وجود دارد، نمایش داده می‌شود، اگر Ctrl + R را دفعات بعد بزنیم دستورات قبل‌تر را نمایش می‌دهد و زمانی که به دستور دلخواه رسیدیم کلید اینتر را می‌زنیم (قبل از زدن اینتر حتما دستور را چک می‌کنیم).کلیدهای Ctrl+C و Ctrl+Zبرای متوقف کردن دستوری که در حال اجرا است به کار می‌رود.کلیدهای Crtl+aرفتن به ابتدای خط جاریکلیدهای Ctrl+eرفتن به انتهای خط جاریکلیدهای “;”برای اجرای چند دستور به صورت ترتیبی و پشت سر هم استفاده می‌شود.کلیدهای &&اجرای چند دستور به ترتیب در صورت موفق بودن اجرای دستور قبلی.کلید“|” Pipeبرای ارسال خروجی یک دستور به دستور دیگر استفاده می‌شود.در این مثال خروجی cat به grep ارسال می‌شود.کلیدهای Ctrl+Sبرای freeze کردن ترمینالکلیدهای Ctrl+Qبرای unfreeze کردن ترمینال.کلیدهای Ctrl+Dعمل Logout از یوزر جاریدستور nohupهنگامی که خواسته باشیم دستور در حال اجرا با بسته شدن ترمینال یا logout یا قطع شدن ارتباط ما با سرور همچنان به اجرای خود ادامه دهد از nohup استفاده می‌کنیم. اجرای این دستور قبل از دستور اصلی خروجی دستور اصلی را به فایل nohup.out ارسال می‌کند. استفاده از این دستور در پیش‌زمینه ترمینال، با توجه به عدم امکان استفاده از ترمینال در زمان اجرای دستور، خیلی مفید نیست، به همین دلیل به همراه & در انتهای دستور برای ارسال دستور به پس زمینه استفاده می‌شود.