سبد خرید

0

هیچ محصولی در سبد خرید نیست.

علاقه مندی ها

برای مشاهده لیست علاقه مندی ها وارد شوید!

مشاهده محصولات فروشگاه

درک ماهیت I/O in Linux در سال 2021

I/O in Linux

همانطور که تاکنون از لینوکس استفاده کرده اید، ممکن است با ارجاعاتی به “I/O in Linux” برخورد کرده باشید. 

Standard I/O in Linux - ورودی ها:

ورودی استاندارد یا I/O اصطلاحی برای ورودی یا ورودی هایی است که یک برنامه مبتنی بر دستور خط فرمان دریافت می کند. در فرآیند استفاده تعاملی، این ورودی معمولاً از صفحه کلید بدست می آید، اما همانطور که بعداً خواهید دید، می تواند از یک فایل نیز به دست بیاید.

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

Standard I/O in Linux - خروجی ها:

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

ترمینال‌ های Teletype نیز در زمانی که جد لینوکس یعنی یونیکس، در آزمایشگاه‌ های بل در اواخر دهه 1960 و اوایل دهه 1970 در حال توسعه بود، بیشتر مورد استفاده بودند.

مسیر یابی I/O in Linux:

یکی از قدرتمندترین ویژگی های سیستم های عامل لینوکس و یونیکس امکان تغییر مسیر ورودی و خروجی به فایل ها و برنامه های دیگر بوده و هست.

پرکاربرد ترین روش ارسال خروجی از یک دستور به جایی دیگر یا یک “pipeline” است. به عنوان مثال، برای اینکه ببینید چند فایل لینوکس دارای پسوند “sh” در نام خود هستند، می توانید خروجی دستور ls را با grep به صورت زیر ترکیب کنید.

ls /bin | grep 'sh'
I/O in Linux

در ادامه بحث I/O in Linux برای تغییر مسیر خروجی  به یک فایل، از عملگر > استفاده کنید. به عنوان مثال، برای ارسال خروجی دستور ls به لیست فایل همانند زیر در خط فرمان دستور را وارد کنید:

ls > filelist

عملگر >> خروجی را به فایل موجود اضافه می کند یا در صورت عدم وجود آن را ایجاد می کند. برای جلوگیری از بازنویسی تصادفی یک فایل، می توانید گزینه “noclobber” را در Bash وارد کنید:

همچنین می توانید با عملگر < یک برنامه ورودی از یک فایل داشته باشید. برنامه cat می تواند محتویات یک فایل را با گرفتن ورودی از فایل و ارسال آن به خروجی استاندارد چاپ کند.

cat < file

حتی در خصوص I/O in Linux می توانید خطای های استاندارد را با استفاده از یک توصیفگر فایل و یا عددی که مخفف یکی از اشکال استاندارد ورودی و خروجی است تغییر مسیر دهید. با توصیفگر های فایل، 0 ورودی استاندارد، 1 خروجی استاندارد و 2 خطای استاندارد است. در تمامی مراحل استفاده I/O in Linux برای خلاص شدن از شر خطاها، هدایت خطای استاندارد به /dev/null مفید خواهد بود:

linux_command 2> /dev/null

حتی در خصوص I/O in Linux می توانید خطای های استاندارد را با استفاده از یک توصیفگر فایل و یا عددی که مخفف یکی از اشکال استاندارد ورودی و خروجی است تغییر مسیر دهید. با توصیفگر های فایل، 0 ورودی استاندارد، 1 خروجی استاندارد و 2 خطای استاندارد است. در تمامی مراحل استفاده I/O in Linux برای خلاص شدن از شر خطاها، هدایت خطای استاندارد به /dev/null مفید خواهد بود:

می‌توانید خروجی و ورودی استاندارد را به‌طور هم‌زمان با &> تغییر مسیر دهید، که در صورت نیاز به ارسال ایمیل یا ایجاد یک پست در تالار گفتگو در مورد مشکلی که با یک برنامه دارید، بسیار مفید خواهد بود:

linux_command &> file

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

برای دانستن بیشتر در خصوص موضوع I/O in Linux و بسیاری موضوعات دیگر می توانید کتاب زیر را لینک زیر دانلود نمایید:

William E. Shotts, Jr. – The Linux Command Line_ A Complete Introduction-No Starch Press (2012)

احمد ساروخانی
احمد ساروخانی

  • چنانچه دیدگاهی توهین آمیز باشد و متوجه اشخاص مدیر، نویسندگان و سایر کاربران باشد تایید نخواهد شد.
  • چنانچه دیدگاه شما جنبه ی تبلیغاتی داشته باشد تایید نخواهد شد.
  • چنانچه از لینک سایر وبسایت ها و یا وبسایت خود در دیدگاه استفاده کرده باشید تایید نخواهد شد.
  • چنانچه در دیدگاه خود از شماره تماس، ایمیل و آیدی تلگرام استفاده کرده باشید تایید نخواهد شد.
  • چنانچه دیدگاهی بی ارتباط با موضوع آموزش مطرح شود تایید نخواهد شد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

مطالب مرتبط

لینک کوتاه نوشته