اطلاعیه

بستن
No announcement yet.

آشنایی با برخی ابزار های خط فرمان

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    آشنایی با برخی ابزار های خط فرمان

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

    میریم سر اصل مطلب…

    1 – grep :
    این دستور خیلی ساده و مفیدیه. این دستور میتونه از بین هزاران خط متن اونهایی که میخواید واستون جدا کنه و نمایش بده. معمولا به دو صورت استفاده میشه. اول اینکه یه دستور خروجیش زیاد هست و میخواهید فقط یه سری خطوط خاص رو ببینید. اینجوری استفاده میشه :

    کد PHP:
     <comamand> | grep search-text
    که command همون دستوری است که خروجی تولید میکند و search-text هم متنی است که تو خروجی دنبالش هستید.

    یا برای اینکه بتونید توی یه فایل دنبال یه خط خاص بگردید میتونید ازش استفاده کنید.به این فرم :

    کد PHP:
     <grep <pattern> <file 
    که pattern متنی است که دنبالش هستید و file هم اسم فایلی است که داخلش میخواهید جستجو کنید.

    برای اطلاعات بیشتر هم میتونید از سوییچ —help یا راهنمای man grep استفاده کنید.

    2 – !!
    این در حقیقت به دستور قبلی اشاره میکنه. یعنی هر جا اینو نوشتید یعنی دستور قبلی که اجرا کردید جایگزینش میشه.

    مثلا یه دستور رو میزنید :

    کد PHP:
     gedit /etc/fstab 
    این دستور واسه اجرا(در حقیقت واسه ذخیره کردن) اجازه کاربر root میخواد برای همین هم باید با sudo ( یا su قبش زده باشید) اجرابشه. حالا اگه یادتون رفته باشه میزنید :

    کد PHP:
     !! sudo 
    و دستور قبلی با مجوز root اجرا میشه. اگه کمی کار کنید میبینید که خیلی میتونه مفید باشه.

    3 – wget :
    این دستور برای دانلود کردن به کار میره. در حقیقت این یه برنامه هست که تو اکثر توزیع های لینوکس موجوده. اگه یه موقع تو ترمینال گیر کردید و خواستین چیزی دانلود کنید ازش استفاده کنید.به این شکل استفاده میشه :

    کد PHP:
     <wget <url 
    خیلی ساده بود نه؟ این دستور تنظیمات زیادی داره ولی چندتاش رو میگم :

    اگه چند تا لینک دارید همه رو توی یه فایل ذخیره کنید جوری که تو هر خط یه لینک باشه بعد این دستور رو بزنید :

    کد PHP:
     <wget -<filename 
    که filename همون فایلی که لینک ها داخلشه. بعد خودش همه ی لینک ها رو دانلود میکنه.

    اگه وسط یه دانلود اتفاقی پیش اومد و دانلود قطع شد یا خودتون قطعش کردید میتونید برید به همون پوشه ای که توش داشتید دانلود میکردید و دستور زیر رو بزنید تا ادامه ی دانلود رو انجام بده :

    کد PHP:
     <wget -<url 
    البته میتونید جای url از همون حالتی که بالا گفتم واسه چند تا لینک استفاده کنید. البته واسه دانلود تو خط فرمان ابزار های قوی تری هم مثل axel یا aria2 یا prozilla هستن.

    طبق معمول واسه اطلاعات بیشتر از —help یا man wget استفاده کنید.

    4 – cat :
    این دستور محتویات یه فایل رو به خروجی استاندارد(صفحه نمایش) میفرسته یعنی یه فایل رو رو صفحه نمایش میده. این دستور بیشتر با دستور های دیگه به کار میره. مثلا واسه جستجو توی یه فایل میتونید از دستور زیر استفاده کنید :

    کد PHP:
     <cat <filename> | grep <search-text 
    این دستور سوییچ های خوبی هم داره. مثلا سوییچ -n شماره خط ها رو هم چاپ میکنه یا -E انتهای هر خط رو با $ نشون میده.

    در ضمن میتونید چند تا فایل رو بهش بدید که رو صفحه چاپ کنه. اگه میخواید از ورودی استاندارد(صفحه کلید یا متن روی صفحه) به عنوان فایل استفاده کنه از یه خط تیره ( – ) استفاده کنید. مثلا دستور :

    کد PHP:
     cat f – g 
    اول فایل f رو نشون میده بعد از ورودی استاندارد استفاده میکنه بعد هم g رو نشون میده.

    5- tail – head :
    این دو دستور شبیه به هم هستند واسه همین هم با هم میگمشون. دستور tail برای نشون دادن چند خط ( پیش فرض ۱۰ خط ) آخر یه متن به کار میره. میتونید فایل رو مستقیم بهش بدید مثل :

    کد PHP:
     <tail <filename 
    یا میتونین ازش به این شکل استفاده کنید :

    کد PHP:
     command> | tail
    که این دستور ۱۰ خط آخر خروجی دستور command رو نشون میده. از سوییچ های این دستور میشه از -n برای مشخص کردن تعداد خط ها و -c برای اینکه بگید جای ۱۰ خط آخر یه تعداد بایت مشخص آخر رو نشون بده استفاده میشه. سوییچ آخر رو میشه با پسوند ها ی b , kB, K , MB و همین جوری استفاده کرد. مقدار دقیق این ها رو توی سوییچ —help میتونین ببینین. به عنوان مثال واسه چاپ ۱۰ کلیو بایت آخر یه فایل از فرمان زیر استفاده کنین :

    کد PHP:
     <tail -c 10kB <filename 
    مثل همیشه اگه سوالی بود از —help یا man tail بپرسید!

    6 – dd :
    این دستور واسه نوشتن یه فایل روی یه دستگاه(device) به کار میره. منظور از دستگاه بیشتر همون هارددیسک و فلش هست.

    بهترین کاری که این دستور واسه من میکنه اینه که میتونم باهاش فایل های image لینوکس که قابل بوت هستند رو روی فلش رایت کنم. واسه این کار میتونید از :

    کد PHP:
     <dd if=<imagefileof=<device 
    که به جای imagefile مسیر فایل image و به جای device دستگاه رو قرار بدین.

    واسه دیدن دستگاه مورد نظر و پیدا کردنش میتونید تو پوشه ی /dev دنبالش بگردین. معمولا روی سیستم های لینوکس هاردها اولشون sd داره بعد هم یه حرف که به ترتیب میره بالا. مثال میزنم. فرض کنید دو تا هارد دارید و یک فلش هم وصل کردید. هارد اول میشه /dev/sda هارد دوم میشه /dev/sdb فلشتون هم میشه /dev/sdc که برای رایت کردن روی فلش باید همین مسیر آخر رو به عنوان دستگاه بهش بدید. اگه خوب تو اون مسیر نگاه کنید میبینید یک سری دستگاه هستند که شبیه هارد هستند ولی آخرشون شماره هم داره. اون ها پارتیشن های هاردتون هستند. برای درست کردن فلش قابل بوت از همون مسیری که گفتم استفاده کنید و شماره نذارید.

    این دستور میتونه واسه بک آپ گیری هم استفاده بشه. مثلا اگه به جای imagefile مسیر یه هارد رو بدید و به جای device مسیر یه فایل روحالا هارد رو بک آپ گرفتید. واسه برگردوندن هم میشه جای هارد و فایل رو با هم عوض کرد.

    اگه هم اطلاعات بیشتر خواستید میدونید از کجا بپرسید!

    7 – md5sum – sha1sum – sha256sum :
    این دستور ها واسه ی پیدا کردن checksum ( اصطلاح فارسیش رو نمیدونم!) استفاده میشن. اگه دقت کرده باشید وقتی یه فایل بزرگ رو میخواید دانلود کنید کنارش یه متن بزرگ ترکیبی از حروف و اعداد مینوسند که بقلش نوشته md5 یا هرکدون از سه تای بالا. این ها واسه اینن که شما مطمئن بشید فایل رو درست دانلود کردید و خراب نیست. واسه این کار از دستور زیر استفاده کنید :

    کد PHP:
     <md5sum <filename 
    که به جای filename مسیر فایلی که دانلود کردید رو بدید. یه متن مثل اونی که تو سایت بود نوشته میشه. اینو با اونی که تو سایت بود مقایسه کنید اگه یکی بودند یعنی فایلی که دانلود کردید دقیقا همون فایلیه که از سرور گرفتین. اگه هم یه سایت دارین که توش upload میکنید میتونید با این روش checksum رو حساب کنید و به کاربراتون اطمینان بدید که فایلشون درست دانلود میشه یا نه.

    تو دستور بالا میتونید md5sum رو با sha1sum یا sha256sum عوض کنید که آخری از همه بهتره ولی زمان بیشتری میبره و متنی که تولید میکنه بزرگتره.

    دیگه خودتون میدونین از کجا بیشتر اطلاعات بگیرین!

    9-uname :
    این دستور یه سری اطلاعات راجع به سیستم میده. مفید ترینشون معماری سیستم(۳۲بیتی یا ۶۴بیتی) و ورژن هسته ی لینوکستونه. برای دیدن همه ی اطلاعات از

    کد PHP:
     uname -
    استفاده کنین.

    10 -more – less :
    این ها واسه دیدن متن های بلند استفاده میشن. فرض کنید میخواید کل خروجی دستور dmesg رو ببنید. این دستور خروجی زیادی تولید میکنه که همش توی صفحه نمایش جا نمیشه. واسه همین از more یا less استفاده میکنیم. به این صورت استفاده میشن :

    کد PHP:
     command> | more
    به جای command دستور مورد نظر رو بنویسید. فرق more و less توی اینه که اولی ساده تره و توش فقط میتونید با enter به خطوط بعدی برید ولی less میتونه تو خط ها جابه جا بشه یا از کلید ها page up-down استفاده کنه. توی هرکدوم که باشید با زدن دکمه q میتونین خارج شید و با زدن h لیستی از دکمه های کاربردی رو ببینید.

    باز هم man اینجا به کارتون میاد!

    10- man :
    این دستور دیگه باید آشنا باشه! اگه بلد نبودید با یه دستور کار کنید اول سوییچ —help (شاید هم -h ) رو امتحان کنید. اگه اطلاعات بیشتری خواستین از man استفاده کنید.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 01-12-2020, 12:31 AM.

درباره انجمن منطقه لینوکسی ها

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

شبکه های اجتماعی

ایمیل مدیریت

Habili@linux-zone.org

در حال انجام ...
X