انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: چرا با وجود دادن دستور set -o ignoreeof باز هم باز چند بار زدن ctrl + d  (دفعات بازدید: 222 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین 🇬🇧بریتانیای کبیر🇬🇧

  • High Hero Member
  • *
  • ارسال: 2657
  • جنسیت : پسر
  • GOD SAVE THE KING/QUEEN
چرا با وجود دادن دستور set -o ignoreeof باز هم با چند بار زدن ctrl + d سیستم logout می‌شود؟
🇬🇧🏴󠁧󠁢󠁥󠁮󠁧󠁿🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧

آفلاین Dragon-

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 5124
  • جنسیت : پسر
وقتی این دستور رو اجرا می‌کنید، متغیر محیطی IGNOREEOF تعریف میشه و مقدار اون برابر 10 قرار می‌گیره.
این متغیر مشخص می‌کنه که bash چند بار کاراکتر EOF رو نادیده بگیره.

وقتی set -o ignoreeof رو می‌زنید، EOF کاراکتر ۱۰ بار نادیده گرفته میشه؛ بار یازدهم باعث میشه bash بسته بشه.
اگه بین EOF‌‌ها یه چیز دیگه بزنید، تعداد کاراکتر‌های EOF دریافت شده صفر میشه.
مثلا اگه set -o ignoreeof رو بزنید و بعد ۹ بار ctrl + d رو فشار بدید و بعد مثلا ls رو اجرا کنید، باید دوباره ۱۱ بار ctrl + d رو بزنید تا از bash خارج بشید. اون ۹ تای قبل صفر میشه.
میدونید که زکات علم نشر آن است