فرمان Linux را یاد بگیرید - کامل شوید

نام

bash ، نام مستعار، bg ، bind، break، builtin، cd ، command، compgen، complete، continue، declare، dirs، decown، echo، enable، eval، exec، exit، export، fc، fg، getopts، hash ، help تاریخ ، شغل، کشتن ، اجازه، محلی، خروج، پاپ ، printf ، pushd، PWD ، خواندن، readonly، بازگشت ، تنظیم، تغییر، shopt، منبع، تعلیق، تست، زمان، دام، نوع، تایمر، ulimit، umask، unalias ، unset، wait - دستورات ساخته شده در bash ، bash را ببینید (1)

دستورالعمل Bash Builtin

به غیر از موارد ذکر شده، هر دستورالعمل داخلی در این قسمت به عنوان گزینه های پذیرفته شده قبل از - قبول می شود - برای نشان دادن پایان گزینه ها.

: [ بحث ]

بدون اثر؛ دستور فراتر از گسترش استدلال و انجام هر گونه تغییر مسیر مشخص نیست. یک کد خروج صفر بازگردانده می شود.

. نام فایل [ argument ]

نام فایل منبع [ argument ]

دستورات را از نام فایل در محیط پوسته فعلی خواندن و اجرا کنید و وضعیت خروج آخرین دستور اجرا شده از نام فایل را بازگردانید. اگر نام فایل حاوی یک اسلش باشد، نام فایل ها در PATH برای پیدا کردن پوشه ای حاوی نام فایل استفاده می شود . فایل مورد جستجو در PATH نباید اجرایی باشد. هنگامی که bash در حالت posix نیست ، دایرکتوری فعلی مورد جستجو است اگر هیچ فایل در PATH یافت نشد. اگر گزینه sourcepath به فرمان shopt builtin خاموش باشد، PATH جستجو نمی شود. اگر هرگونه استدلال ارائه می شود، هنگامی که نام فایل اجرا می شود، آنها پارامترهای موقتی می شوند. در غیر این صورت پارامترهای موقعیتی بدون تغییر هستند. وضعیت بازگشت وضعیت آخرین فرمان خروجی در اسکریپت است (0 اگر هیچ دستورالعمل اجرا نشود)، و اگر نام فایل پیدا نشد یا قابل خواندن باشد، نادرست است.

نام مستعار [ -p ] [ نام [= ارزش ] ...]

نام مستعار بدون استدلال و یا با گزینه -p لیست نامهای مستعار در فرم نام مستعار نامیده می شود . هنگامی که استدلال ارائه می شود، یک نام مستعار برای هر نامی که ارزش داده شده تعریف شده است. فضای عقب در ارزش باعث می شود کلمه بعدی برای جایگزینی مستعار بررسی شود که نام مستعار گسترش یافته باشد. برای هر نام در لیست استدلال که برای هیچ مقدار داده نشده است، نام و مقدار نام مستعار چاپ می شود. نام مستعار درست است مگر اینکه نامی برای آن تعیین نشده باشد.

BG [ jobspec ]

مشاغل مشاغل معلق را در پس زمینه بازنویسی کنید ، مثل اینکه با & آغاز شده است. اگر jobpec وجود نداشته باشد، مفهوم پوسته شغل فعلی مورد استفاده قرار می گیرد. BG jobspec 0 را نشان می دهد مگر اینکه زمانی که کنترل کار غیرفعال شود یا زمانی که با کنترل کار فعال می شود اجرا شود، اگر jobpec پیدا نشد و بدون کنترل کار شروع نشد.

bind [ -m keymap ] [ -lpsvPSV ]

[ -m keymap ] [ -q function ] [ -u function ] [ -r keyseq ]

bind [ -m keymap ] -f filename

bind [ -m keymap ] -x keyseq : shell-command

bind [ -m keymap ] keyseq : function-name

اتصال readline-command

نمایش خط کیبورد فعلی و تابع، پیوست کلید توالی به یک تابع readline یا ماکرو، یا یک متغیر readline را تنظیم کنید. هر استدلال غیر گزینه یک فرمان است به عنوان آن را در ininputrc ظاهر می شود، اما هر اتصال یا فرمان باید به عنوان یک استدلال جداگانه منتقل شود؛ مثلا "" \ Cx \ Cr ": دوباره خواندن init-file". گزینه ها، اگر عرضه شوند، معانی زیر دارند:

کیمیاپ

استفاده از کیپ تاپ را به عنوان کیپ تاپ تحت تاثیر قرار می دهد. نام کیام قابل قبول emacs، emacs-standard، emacs-meta، emacs-ctlx، vi، vi-move، vi-command و vi-insert است . vi معادل vi-command است ؛ emacs معادل emacs-standard می باشد.

-l

نام تمام توابع readline را فهرست کنید.

نام و پیوندهای تابع readline را به گونه ای نمایش دهید که بتوان آنها را دوباره خواند.

نام فعلی خطوط readline و پیوندها را فهرست کنید.

-v

نمایش نام متغیر readline و مقادیر به طوری که آنها را می توان دوباره خواندن.

-V

لیست نام و مقادیر متغیر readline فعلی را لیست کنید.

-s

نمایش توالی کلید readline متصل به ماکرو و رشته هایی که آنها خروجی به طوری که آنها را می توان دوباره خواندن.

-S

نمایش توالی کلید readline محدود به ماکرو و رشته های آنها خروجی.

-f نام فایل

پیوند های کلید از نام فایل را بخوانید.

-q function

پرس و جو در مورد کدام کلید ها عملکرد تابع نامیده می شود .

-u تابع

لغو کردن تمام کلید های مرتبط با تابع نامیده شده.

-r keyseq

کلیدهای فعلی برای keyseq را حذف کنید .

-x keyeq : shell-command

دلیل اجرای shell-command هر زمانی که keyeq وارد می شود اجرا شود.

مقدار بازگشتی 0 است مگر آنکه یک گزینه ناشناخته داده شود یا یک خطا رخ دهد.

شکستن [ n ]

خروج از داخل یک برای ، در حالی که ، تا ، یا حلقه را انتخاب کنید . اگر n مشخص شود، سطح n را شکستن. n باید 1 باشد. اگر n بزرگتر از تعداد حلقه های محصور باشد، تمام حلقه های محصور خارج می شوند. مقدار return برابر صفر است، مگر آنکه پوسته وقتی حلقه اجرا نمی شود حلقه اجرا می شود.

builtin shell-builtin [ arguments ]

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

cd [ -L | -P ] [ dir ]

دایرکتوری فعلی را به dir تغییر دهید . متغیر HOME به صورت پیش فرض است. متغیر CDPATH مسیر جستجوی دایرکتوری حاوی dir را تعیین می کند . نام های جایگزین دایرکتوری در CDPATH توسط یک کولون (:) جدا می شوند. نام دایرکتوری خالی در CDPATH همان دایرکتوری فعلی است یعنی `` . ''. اگر dir با اسلش (/) آغاز شود، سپس CDPATH استفاده نمی شود. گزینه -P می گوید برای استفاده از ساختار دایرکتوری فیزیکی به جای دنبال کردن لینک های نمادین (همچنین گزینه -P را به فرمان builtin set نیز ببینید)؛ گزینه -L قدرت لینک های نمادین را دنبال می کند. یک استدلال - برابر با $ OLDPWD معادل است. مقدار برگشتی درست است اگر دایرکتوری با موفقیت تغییر کرد؛ غلط در غیر این صورت

فرمان [ -pVv ] دستور [ arg ...]

اجرای دستور با args سرکوب جستجوی صحیح پوسته پوسته را اجرا کنید. فقط دستورات و دستوراتی که در PATH پیدا می شوند اعدام می شوند. اگر گزینه -p داده شود، جستجو برای فرمان با استفاده از مقدار پیش فرض برای PATH انجام می شود که تضمین شده است که تمام سرویس های استاندارد را پیدا کند. اگر گزینه -V یا -v تهیه شده باشد، توضیحات فرمان چاپ می شود. گزینه -v یک کلمه را نشان می دهد که نشان می دهد دستور یا نام فایل مورد استفاده برای فراخوانی دستور برای نمایش داده می شود. گزینه -V یک توصیف عمیق تر تولید می کند. اگر گزینه -V یا -v ارائه شده باشد، وضعیت خروج 0 است اگر دستور یافت و 1 اگر نبود. اگر هیچ یک از گزینه ها ارائه نمی شود و خطایی رخ داده است یا دستور نمی تواند یافت شود، وضعیت خروج 127. در غیر این صورت، وضعیت خروج دستور builtin وضعیت خروج از دستور است .

compgen [ گزینه ] [ word ]

مطابق با گزینه s، ممکن است کلمات کلیدی را مطابق با گزینه s ایجاد کنید، که ممکن است هر گزینه ای که توسط builtin کامل با استثناء -p و -r پذیرفته شده است و مسابقات را به خروجی استاندارد ارسال کند. هنگام استفاده از گزینه های -F یا -C ، متغیرهای پوسته مختلفی که توسط امکانات تکمیل برنامه ریزی شده تعیین می شوند، در حالی که در دسترس هستند، ارزش های مفید ندارند.

مسابقات تولید خواهد شد همانطور که اگر کد تکمیل برنامه ریزی شده آنها را به طور مستقیم از مشخصات تکمیل با همان پرچم تولید شده است. اگر کلمه مشخص شده باشد، فقط کسانی که تکمیل کلمات مرتبط نمایش داده می شوند.

مقدار برگشتی درست است مگر اینکه یک گزینه نامعتبر عرضه شود یا هیچ سازگاری ایجاد نشد.

[ -abcdefgjksuv ] [ -o comp-option ] [ -A action ] [ -G globpat ] [ -W wordlist ] [ -P prefix ] [ -S suffix ]


[ -X filterpat ] [ -F function ] [ -C command ] نام [ نام ... ]

کامل -pr [ نام ...]

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

فرایند استفاده از این مشخصات تکمیل در هنگام تکمیل کلمه، در بالا در زیر برنامه ریزی تکمیل شرح داده شده است.

گزینه های دیگر، اگر مشخص شده باشند، معانی زیر را دارند. استدلال های به گزینه های -G ، -W و -X (و در صورت لزوم گزینه های -P و -S ) باید برای محافظت از آنها از گسترش قبل از ساخت کامل ساختمان، نقل قول شود.

-o comp-option

کامپوننت گزینه چندین جنبه از رفتار compspec را فراتر از نسل ساده تکمیل کنترل می کند. comp-option ممکن است یکی از موارد زیر باشد:

به طور پیش فرض

از کامپوننت کامپسپ استفاده کنید.

dirnames

انجام تکمیل نام دایرکتوری اگر compspec تولید هیچ مسابقه ای.

نام فایل

به خط readline بگویید که compspec نام فایل را تولید می کند، بنابراین می تواند پردازش های خاصی را انجام دهد (مانند اضافه کردن اسلش به نام دایرکتوری یا سرکوب فضاهای انتهایی). قصد دارد با توابع پوسته مورد استفاده قرار گیرد.

جای خالی وجود ندارد

به خط readline بپردازید تا فضای (به طور پیش فرض) را به کلمات تکمیل شده در انتهای خط اضافه کنید.

- اقدام

این اقدام ممکن است یکی از موارد زیر باشد تا لیستی از احتمالات ممکن را تولید کند:

نام مستعار

نام مستعار همچنین ممکن است به عنوان -a تعریف شود.

arrayvar

نام متغیر آرایه

الزام آور

نامهای کلید پیوند خطی Readline .

خانه

نام دستورات shell ساخته شده است. همچنین ممکن است به عنوان -b مشخص شود.

فرمان

نام فرماندهی همچنین ممکن است به عنوان نام مشخص شود . همچنین ممکن است به عنوان -c مشخص شود.

دایرکتوری

نام دایرکتوری همچنین ممکن است به عنوان -d مشخص شود.

معلول

نامهای ساخته شده از پوسته غیرفعال

فعال شده است

نامهای ساخته شده بوسیله پوسته فعال

صادرات

نام متغیرهای پوسته صادر شده. همچنین ممکن است به عنوان -e تعریف شود.

فایل

نام فایل همچنین ممکن است به عنوان -f مشخص شود.

عملکرد

نام توابع پوسته

گروه

نام گروه همچنین ممکن است به عنوان -g مشخص شود.

خوشبختی

مباحث راهنما به عنوان پذیرفته شده توسط کمک ساخته شده است .

نام میزبان

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

کار

نام کار، اگر کنترل شغل فعال باشد. همچنین ممکن است به عنوان -j تعریف شود.

کلمه کلیدی

شل کلمات را حفظ کرد همچنین ممکن است به عنوان -k تعریف شود.

در حال اجرا

نام مشاغل در حال اجرا، اگر کنترل شغل فعال باشد.

سرویس

نام خدمات همچنین ممکن است به عنوان -s مشخص شود.

setopt

استدلال های معتبر برای گزینه -o به مجموعه builtin.

shopt

گزینه شل نام به عنوان پذیرفته شده توسط فروشگاه ساخته شده است.

سیگنال

نام سیگنال

متوقف شد

نام شغل متوقف شده، اگر کنترل شغل فعال باشد.

کاربر

نام کاربری همچنین ممکن است به عنوان -u مشخص شود.

متغیر

نام همه متغیرهای پوسته. ممکن است به عنوان -v تعریف شود.

-G globpat

الگوریتم گسترش نام فایل به صورت globpat گسترش یافته است تا امکان تکمیل امکان را فراهم کند.

-W wordlist

فهرست wordlist با استفاده از کاراکترهای متغیر خاص IFS به عنوان delimiters تقسیم می شود و هر کلمه نتیجه ای گسترش می یابد. تکمیل های احتمالی اعضایی از لیست نتیجه است که مطابق با کلمه تکمیل شده است.

-C دستور

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

-F عملکرد

تابع تابع پوسته در محیط پوسته فعلی اجرا می شود. پس از اتمام کار، کامپوننت های ممکن از مقدار متغیر آرایه COMPREPLY بازیابی می شوند.

-X فیلترپت

filterpat الگویی است که برای گسترش نام فایل استفاده می شود. این به لیست تکمیل های احتمالی تولید شده توسط گزینه ها و استدلال های قبلی اعمال می شود و هر تکمیل مربوط به فیلترپت از لیست حذف می شود. یک پیشرو ! در filterpat الگوی را نفی می کند. در این مورد، هر تکمیل که فیلترینگ مطابقت ندارد حذف می شود.

پیشوند P

پیشوند در ابتدای هر تکمیل امکان پذیر بعد از استفاده از تمام گزینه های دیگر اضافه می شود.

-S پسوند

پس از اتمام تمام گزینه های دیگر پسوند به هر تکمیل ممکن اضافه می شود.

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

ادامه [ n ]

تکرار بعدی محصور کردن برای ، در حالی که ، تا ، و یا حلقه را انتخاب کنید . اگر n مشخص شود، در محدوده n- th محصور می شود. n باید> 1 باشد. اگر n بزرگتر از تعداد حلقه های محصور باشد، آخرین حلقه محصور (loop 'top-level' ') از بین می رود. مقدار بازگشتی 0 است مگر اینکه پوسته اجرای loop را اجرا نکند.

اعلام [ -afFirtx ] [ -p ] [ نام [= ارزش ]]

[ -afFirtx ] [ -p ] [ name [= value ]] را تایپ می کند

اعلام متغیرها و / یا دادن آنها به صفات. اگر نام s داده نشود، مقدار متغیر را نمایش می دهد. گزینه -p ویژگی ها و مقادیر هر نام را نمایش می دهد . هنگامی که -p استفاده می شود، گزینه های اضافی نادیده گرفته می شوند. گزینه -F از نمایش تعاریف تابع جلوگیری می کند؛ فقط نام و ویژگی های تابع چاپ می شوند. گزینه -F به معنی -f است . گزینه های زیر می توانند برای محدود کردن خروجی به متغیرهایی با مشخصه مشخص شده یا برای دادن متغیرهای مشخصه استفاده شوند:

-a

هر نام یک متغیر آرایه است ( آرایه ها را در بالا ببینید).

-f

فقط از نام تابع استفاده کنید

-من

متغیر به عنوان یک عدد صحیح در نظر گرفته می شود؛ ارزیابی محاسباتی (ارزیابی ARITHMETIC) را انجام می دهد هنگامی که متغیر یک مقدار اختصاص داده می شود.

-r

اسم را فقط خواندنی کن سپس با استفاده از اعداد تخصیص بعدی یا نامگذاری، نمیتوان این اسامیها را تعیین کرد.

هر اسم را مشخص کنید. توابع ردیابی تله DEBUG را از پوسته فراخوانی به ارث می برند. ویژگی ردیابی برای متغیرها معنای خاصی ندارد.

-ایکس

علامت گذاری به نام برای صادرات به دستورات بعدی از طریق محیط زیست.

استفاده از `+ 'به جای` -' این ویژگی را عوض می کند، با استثنا که ممکن است برای از بین بردن یک متغیر آرایه استفاده نشود. هنگامی که در یک تابع استفاده می شود، هر نام را محلی می کند، همانند دستور فرمان محلی . مقدار برگشتی 0 است مگر اینکه یک گزینه نامعتبر مواجه شود، تلاش برای تعیین یک تابع با استفاده از `` -f foo = bar '' انجام می شود، تلاش برای اختصاص یک مقدار به یک متغیر فقط خواندنی است، تلاش انجام می شود برای اختصاص یک مقدار به یک متغیر آرایه بدون استفاده از دستورالعمل ترکیب ترکیب (نگاه کنید به آرایه های بالا)، یکی از نام ها یک نام متغیر پوسته معتبر نیست، تلاش برای خاموش کردن وضعیت خواندن تنها برای یک متغیر فقط خواندنی است یک تلاش برای خاموش کردن وضعیت آرایه برای یک متغیر آرایه انجام می شود یا تلاش برای نشان دادن یک تابع غیر موجود با -f است .

dirs [-clpv ] [+ n ] [- n ]

بدون گزینه، لیستی از دایرکتوری های در حال یاد آوری را نمایش می دهد. نمایش پیش فرض در یک خط با نام دایرکتوری است که با فضاهای جدا شده است. راهنماها با دستور pushd به لیست اضافه می شوند. دستور popd دستورات را حذف می کند.

+ n

شمارش ورود n th را از سمت چپ لیست نشان داده شده توسط dirs نمایش داده می شود زمانی که بدون گزینه انتخاب می شود، شروع با صفر است.

- n

شمارش n- th ورودی را از سمت راست لیست نشان داده شده توسط dirs، هنگامی که بدون گزینه ها فراخوانی می شود، با صفر شروع می شود.

-c

پاک کردن پشته دایرکتوری با حذف تمام نوشته ها.

-l

یک لیست بلندتر تولید می کند قالب پیش فرض لیست از تیلد برای نشان دادن دایرکتوری خانگی استفاده می کند.

پشته دایرکتوری را با یک ورودی در هر خط چاپ کنید.

-v

پشته دایرکتوری را با یک ورودی در هر خط چاپ کنید، پیشوند هر ورودی با شاخص آن در پشته.

مقدار بازگشتی 0 است مگر اینکه یک گزینه نامعتبر عرضه شود یا n شاخص در انتهای پشته دایرکتوری باشد.

رد کردن [ -ar ] [ -h ] [ jobspec ...]

بدون گزینه، هر jobpec از جدول مشاغل فعال حذف می شود. اگر گزینه -h داده شده باشد، هر jobpec از جدول حذف نمی شود، اما مشخص شده است به طوری که SIGHUP به شغل ارسال نمی شود اگر پوسته SIGHUP را دریافت کند. اگر هیچ jobpec وجود نداشته باشد، و نه گزینه -a و نه -r ارائه می شود، کار فعلی مورد استفاده قرار می گیرد. اگر هیچ jobpec ارائه نمی شود، گزینه -a به معنای حذف یا علامت همه کارهاست ؛ گزینه -r بدون یک آرگومان jobspec عملیات را برای اجرای مشاغل محدود می کند. مقدار بازگشتی 0 است مگر اینکه jobpec یک کار معتبر را مشخص نکند.

echo [ -neE ] [ arg ...]

خروجی arg s، جدا از فضاهای، و به دنبال خط جدید. وضعیت بازگشت همیشه 0 است. اگر -n مشخص شود، خط جدید انتهایی سرکوب می شود. اگر گزینه -e داده شده است، تفسیر شخصیت های زیر را که پشت سر هم قرار گرفته اند را فعال کنید. گزینه -E تفسیر این شخصیت های فرار را حتی در سیستم هایی که به طور پیش فرض تفسیر می شوند، غیر فعال می کند. گزینه xpg_echo shell ممکن است به صورت پویا تعیین شود که آیا اکو این پیشفرضها را فرار می دهد یا نه. اکو تفسیر نمی کند - به معنای پایان گزینه ها است. echo دنباله های فرار زیر را تفسیر می کند:

\ a

هشدار (زنگ)

\ b

پشت سر هم

\ c

سربرگ خط جدید خطی

\ e

شخصیت فرار

\ f

خوراک فرم

\ n

خط جدید

\ r

برگشت محموله

\ t

زبانه افقی

\ v

برگه عمودی

\\

بکسلش

\ 0 nnn

کاراکتر هشت بیتی که مقدار آن مقدار هشتم nnn است (صفر تا سه رقم اکتال)

\ nnn

کاراکتر هشت بیتی که مقدار آن هشتم nnn است (یک تا سه رقم اکتال)

\ x HH

کاراکتر هشت بیت که ارزش آن هگزادسیمال ارزش HH (یک یا دو رقم هگز) است

فعال [ -adnps ] [ -f نام فایل ] [ نام ...]

دستورات پوسته داخلی را فعال یا غیرفعال کنید. غیر فعال کردن یک builtin اجازه می دهد تا یک دستور دیسک که همان نامی است که یک shell ساخته می شود بدون مشخص کردن نشانی اینترنتی کامل، حتی اگر پوسته به طور معمول برای builtins قبل از دستورات دیسک جستجو می کند. اگر -n استفاده می شود، هر نام غیر فعال می شود در غیر اینصورت، نامها فعال هستند به عنوان مثال، برای استفاده از تست باینری که از طریق PATH به جای نسخه builtin پوسته یافت می شود، `` enable -n test '' را اجرا کنید. گزینه -f به این معنی است که نام فرمان builtin جدید را از نام پرونده مشترک، در سیستم هایی که بارگذاری پویا را پشتیبانی می کنند، بارگذاری کنند. گزینه -d یک builtin که قبلا با -f بارگذاری شده است حذف خواهد شد. اگر هیچ آرگومان نام داده نمی شود، یا اگر گزینه -p ارائه شود، یک لیست از builtins پوسته چاپ شده است. بدون استدلال گزینه دیگر، این لیست شامل تمام builtins پوسته فعال است. اگر -n عرضه می شود، تنها سازندگان غیر فعال چاپ می شوند. اگر -a عرضه شده است، لیست چاپ شده شامل تمام builtins، با نشان دادن اینکه آیا هر کدام فعال است یا خیر. اگر -s عرضه شده است، خروجی به builtins ویژه POSIX محدود شده است.

مقدار بازگشتی 0 است مگر اینکه یک نام یک پوسته داخلی باشد یا یک خطا در بارگذاری یک ساختمان جدید از یک شیء مشترک وجود دارد.

eval [ arg ...]

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

exec [ -cl ] [ -a name ] [ دستور [ arguments ]]

اگر دستور مشخص شده باشد، پوسته جایگزین می شود. هیچ روند جدید ایجاد نشده است. استدلال به استدلال تبدیل می شود به فرمان . اگر گزینه -l تامین شود، پوسته در ابتدای آرگونه zeroth به فرمان منتقل می شود. این چیزی است که ورود (1) انجام می دهد. گزینه -c دستور را با یک محیط خالی اجرا می کند. اگر -a عرضه شده باشد، پوسته اسم را به عنوان استدلال نزولی برای فرمان اجرا می کند. اگر به دلایلی دستور را اجرا نکنید، یک پوسته غیر تعاملی خارج می شود، مگر اینکه پرونده execfail پوسته فعال شود، و در این صورت آن را شکست می دهد. یک پوسته تعاملی اگر فایل را نمی توان اجرا کرد، شکست می خورد. اگر دستور مشخص نشده باشد، هر گونه تغییر مسیر در پوسته فعلی تاثیر می گذارد، و وضعیت بازگشت 0 است. اگر خطای redirection وجود داشته باشد، وضعیت بازگشت 1 است.

خروج [ n ]

چون پوسته را با وضعیت n خروج می کند. اگر n حذف شود، وضعیت خروج از آخرین فرمان اجرا می شود. یک تله در EXIT قبل از اینکه پوسته خاتمه یابد اجرا می شود.

صادرات [ -fn ] [ نام [= کلمه ]] ...

export -p

نام های عرضه شده برای صادرات اتوماتیک به محیط دستورات اجرا شده پس از آن مشخص شده اند. اگر گزینه -f داده شود، نام ها به توابع اشاره دارند. اگر نامی داده نشود یا اگر گزینه -p عرضه شود، لیستی از تمام اسامی صادر شده در این پوسته چاپ می شود. گزینه -n باعث می شود که ملک صادرات از متغیرهای نامشخص حذف شود. صادرات یک وضعیت خروج از 0 را نشان می دهد مگر اینکه یک گزینه نامعتبر مواجه شود، یکی از نام های یک نام متغیر پوسته معتبر نیست، یا -f با یک نام که یک تابع نیست عرضه می شود.

fc [ -e ename ] [ -nlr ] [ اول ] [ last ]

fc -s [ pat = rep ] [ cmd ]

رفع فرمان در فرم اول، طیفی از دستورات از اولین تا آخرین از فهرست تاریخ انتخاب شده است. اول و آخر ممکن است به عنوان یک رشته (برای قرار دادن آخرین دستور شروع با آن رشته) یا به عنوان یک عدد (یک فهرست در لیست تاریخچه، که در آن یک عدد منفی به عنوان یک عدد از شماره فعلی فرمان استفاده می شود) مشخص می شود. اگر آخرین مشخص نشده باشد، به دستور فعلی برای لیست تنظیم شده است (به طوری که `` fc -l -10 '' 10 دستورالعمل را چاپ می کند) و برای اولین بار در غیر این صورت. اگر اولین بار مشخص نشده است، آن را به فرمان قبلی برای ویرایش و -16 برای لیست تنظیم شده است.

گزینه -n در هنگام لیست، تعداد دستورات را کاهش می دهد. گزینه -r دستور دستورات را تغییر می دهد. اگر گزینه -l داده شود، دستورات در خروجی استاندارد ذکر شده است. در غیر این صورت، ویرایشگر داده شده توسط ename در یک پرونده حاوی آن دستور ها مورد استفاده قرار می گیرد. اگر ename داده نشود، مقدار متغیر FCEDIT مورد استفاده قرار می گیرد و مقدار EDITOR اگر FCEDIT تنظیم نشده باشد. اگر هیچ متغیری تنظیم نشده باشد، استفاده می شود. وقتی ویرایش کامل است، دستورات ویرایش شده بازتاب می شوند و اجرا می شوند.

در فرم دوم، دستور بعد بعد از هر نمونه از pat توسط rep قرار می گیرد . نام مستعار مفید برای استفاده با این عبارت `` r = fc -s '' است، به طوری که تایپ کردن `` r cc '' آخرین فرمان را که شروع با `` cc '' اجرا می کند و تایپ `` r '' دوباره اجرا آخرین فرمان

اگر فرم اول مورد استفاده قرار گیرد، مقدار بازگشتی 0 است مگر اینکه یک گزینه نامعتبر مواجه شود یا اولین یا آخرین مشخصه خطوط تاریخ را خارج از دامنه قرار می دهد. اگر گزینه -e تامین شود، مقدار بازگشتی مقدار آخرین دستور اجرا شده یا شکست در صورت خطا با فایل موقت دستورات است. اگر فرم دوم مورد استفاده قرار گیرد، وضعیت بازگشت از دستور دوباره اجرا می شود، مگر اینکه cmd یک خط تاریخ معتبر را مشخص نمی کند، در این صورت fc بازده شکست می کند.

fg [ jobspec ]

Resume jobspec در پیش زمینه و آن را شغل فعلی قرار دهید. اگر jobpec وجود نداشته باشد، مفهوم پوسته شغل فعلی مورد استفاده قرار می گیرد. مقدار بازگشتی این است که فرمان قرار داده شده در پیش زمینه است یا اگر اجرا شود وقتی که کنترل کار غیرفعال شود یا وقتی که با کنترل کار فعال شود، اگر jobpec یک کار معتبر را مشخص نکند یا jobpec مشخص کار را که بدون کنترل شغلی شروع شد .

getopts optstring name [ args ]

getopts توسط روش پوسته برای تجزیه پارامترهای موقعیتی استفاده می شود. optstring حاوی کاراکترهای گزینه ای است که باید شناسایی شوند اگر شخصیت با یک کولون دنبال می شود، انتظار می رود که این گزینه یک استدلال داشته باشد که باید از طریق فضای سفید جدا شود. کاراکتر های علامت سوال و کولون و علامت سوال ممکن نیست به عنوان شخصیت گزینه استفاده شود. هر بار که فراخوانی می شود، getopts گزینه بعدی را در نام متغیر پوسته قرار می دهد، نام اولیه برای آن وجود دارد، و شاخص آرگومان بعدی که باید در متغیر OPTIND پردازش شود . OPTIND هر بار که پوسته یا اسکریپت پوسته فراخوانی می شود، به هر بار مقدار 1 را تنظیم می کند. هنگامی که یک گزینه نیاز به یک استدلال دارد، getopts این پارامتر را به متغیر OPTARG می دهد . پوسته OPTIND را به صورت خودکار بازنشانی نمی کند. اگر یک مجموعه جدید از پارامترها مورد استفاده قرار گیرد باید بین چندین فراخوانی برای getopts درون همان فراخوانی پوسته بازنشانی شود.

هنگامی که پایان گزینه ها مواجه می شود، getopts با مقدار بازگشتی بزرگتر از صفر خارج می شود. OPTIND به شاخص اولین آرگومان غیر گزینه تنظیم شده است، و نام به «؟» تنظیم شده است.

getopts به طور معمول پارامترهای موقعیتی را تجزیه می کند، اما اگر استدلال های بیشتری در args داده شوند، getopts آن ها را تجزیه می کند.

getopts می تواند دو خطا را گزارش کند. اگر اولین کاراکتر optstring کولون باشد، گزارش خطای خاموش استفاده می شود. در عملیات عادی، پیام های تشخیصی چاپ می شوند زمانی که گزینه های نامعتبر یا گزینه های گم شده گزینه های مواجه می شوند. اگر متغیر OPTERR به 0 تنظیم شده باشد، هیچ پیام خطایی نمایش داده نخواهد شد، حتی اگر اولین کاراکتر optstring کولون نیست.

اگر یک گزینه نامعتبر دیده شود، مکان های Getopts را مشاهده می کنید؟ به نام و اگر خاموش نیست، یک پیام خطا را چاپ می کند و OPTARG را باز نمی کند . اگر getopts خاموش باشد، شخصیت گزینه در OPTARG قرار می گیرد و هیچ پیام تشخیصی چاپ نمی شود.

اگر یک آرگومان مورد نیاز یافت نشد و getopts خاموش نیست، یک علامت سوال ( ؟ ) در نام قرار می گیرد، OPTARG غیر فعال می شود و یک پیام تشخیصی چاپ می شود. اگر getopts خاموش است، پس یک کولون (:) در نام قرار داده می شود و OPTARG به کاراکتر گزینه موجود است.

getopts true اگر گزینه ای مشخص یا غیرقابل مشخص باشد پیدا می شود. اگر انتهای گزینه ها یا خطایی رخ دهد، آن را غلط نشان می دهد.

هش [ -lr ] [ -p نام فایل ] [ -dt ] [ نام ]

برای هر نام ، نام فایل کامل فرمان با جستجو در دایرکتوری ها در $ PATH و به یاد می آید. اگر گزینه -p تامین شود، جستجوی مسیر انجام نمی شود و نام پرونده به عنوان نام فایل کامل فرمان استفاده می شود. گزینه -r سبب می شود پوسته همه مکان های یاد شده را فراموش کند. گزینه -d موجب می شود که پوسته مکان های یاد شده هر نام را فراموش کند. اگر گزینه -t ارائه شده باشد، نام کامل کامل که هر نام مربوط است چاپ می شود. اگر آرگومان نام چندگانه با -t تدارک دیده شود ، نام قبل از آدرس راه حل کامل هشدار داده شده است. گزینه -l باعث می شود خروجی در یک فرمت نمایش داده شود که ممکن است به عنوان ورودی دوباره استفاده شود. اگر هیچ استدلالی داده نشده است، یا اگر فقط -l ارائه می شود، اطلاعات مربوط به دستورات یاد شده چاپ می شود. وضعیت بازگشت درست است مگر اینکه یک نام یافت نشد یا یک گزینه نامعتبر عرضه می شود.

کمک [ -s ] [ الگوی ]

نمایش اطلاعات مفید در مورد دستورات داخلی. اگر الگوی مشخص شده باشد، کمک می کند کمک های مفصل در تمام دستورات تطبیق الگو ؛ در غیر این صورت برای تمام سازه های builtins و ساختار کنترل پوسته کمک می شود. گزینه -s اطلاعات نمایش داده شده را به خلاصه ای از استفاده کوتاه محدود می کند. وضعیت برگشت 0 است، مگر اینکه فرمان با الگو مطابقت داشته باشد.

تاریخ [ n ]

تاریخ -c

تاریخ -d افست

history -nrw [ نام فایل ]

history -p arg [ arg ... ]

سابقه تاریخی [ arg ... ]

بدون هیچ گزینه ای، فهرست تاریخچه فرمان را با شماره های خط نمایش می دهد. خطوط ذکر شده با * اصلاح شده اند. استدلال n لیست فقط آخرین خط n است. اگر نام فایل ارائه شده است، آن را به عنوان نام فایل تاریخچه استفاده می شود؛ اگر نه، مقدار HISTFILE استفاده می شود. گزینه ها، اگر عرضه شوند، معانی زیر دارند:

-c

پاک کردن لیست سابقه با حذف همه نوشته ها.

-d افست

ورودی تاریخ را در جبران موقعیت حذف کنید.

-a

خطوط تاریخ "جدید" (خطهای تاریخی که از ابتدای session session bash وارد شده اند) را به فایل تاریخ اضافه کنید.

-n

خطوط تاریخ را که قبلا از پرونده تاریخ به لیست تاریخ کنونی خوانده نشده است، بخوانید. این خطوط از تاریخ آغاز جلسه فعلی فعلی به فایل تاریخ اضافه شده است.

-r

محتوای فایل تاریخ را بخوانید و از آنها به عنوان تاریخ فعلی استفاده کنید.

-w

تاریخچه فعلی را به فایل تاریخی بنویسید، پرونده های پرونده را تغییر دهید.

انجام جایگزینی تاریخ را در args زیر انجام دهید و نتیجه را در خروجی استاندارد نمایش دهید. نتایج را در لیست تاریخ ذخیره نمی کند. هر استدلال باید به منظور غیرفعال کردن گسترش نرمال تاریخچه نقل قول شود.

-s

آرگ ها را در لیست تاریخ ذخیره کنید. آخرین فرمان در لیست تاریخ قبل از اضافه کردن args حذف می شود.

مقدار بازگشتی 0 است مگر اینکه یک گزینه نامعتبر مواجه شود، هنگام خواندن یا نوشتن فایل تاریخچه خطایی رخ می دهد، یک عیب معتبر به عنوان یک argument برای -d یا عرضه تاریخ به عنوان یک argument برای -p اجرا می شود.

مشاغل [ -lnprs ] [ jobspec ...]

شغل -x فرمان [ args ...]

فرم اول مشاغل فعال را لیست می کند. گزینه ها دارای معانی زیر هستند:

-l

لیست پروسس های ID علاوه بر اطلاعات عادی.

فقط ID شناسه روند رهبر فرآیند شغل را لیست کنید.

-n

نمایش اطلاعات فقط در مورد شغل هایی که وضعیت را تغییر داده اند از زمانی که کاربر آخرین وضعیت خود را اعلام کرده است.

-r

محدود کردن خروجی به مشاغل در حال اجرا

-s

محدود کردن خروجی برای متوقف کردن کارها.

اگر jobpec داده شود، خروجی به اطلاعات مربوط به آن کار محدود می شود. وضعیت برگشت 0 است مگر اینکه یک گزینه نامعتبر مواجه شود یا jobpec معتبر ارائه شود.

اگر گزینه -x عرضه شود، شغل جایگزین هر مشکلی است که در فرمان یا args با شناسه گروه پردازش مربوطه جایگزین شده است و فرمان را اجرا می کند args ، وضعیت خروج خود را بازگشت می کند.

کشتن [ -s sigspec | -n signum | - sigspec ] [ pid | jobspec ] ...

kill -l [ sigspec | exit_status ]

ارسال سیگنال به نام sigspec یا signum را به فرآیندهای به نام pid یا jobpec ارسال کنید . sigspec یک نام سیگنال مانند SIGKILL یا یک شماره سیگنال است؛ signum عدد سیگنال است اگر sigspec یک نام سیگنال است، نام ممکن است با یا بدون پیشوند SIG داده شود. اگر sigspec وجود نداشته باشد، SIGTERM فرض می شود. استدلال -l لیست نام سیگنال را نشان می دهد. اگر هر استدلال وقتی که -l داده می شود، ارائه شده است، نام سیگنال مربوط به استدلال ذکر شده است، و وضعیت بازگشت 0. استثنای exit_status به -l یک عدد است که مشخص کردن شماره سیگنال یا وضعیت خروج یک فرآیند با یک سیگنال خاتمه می یابد. اگر حداقل یک سیگنال به طور موفقیت آمیزی فرستاده می شود، کپی می کند و یا اگر یک خطا رخ دهد یا یک گزینه نامعتبر مواجه می شود، اشتباه می شود.

اجازه دهید استدلال [ arg ...]

هر محرمانه یک عبارت حسابی برای ارزیابی است (نگاه کنید به ارزیابی ARITHMETIC ). اگر آخرین آرگومان به 0 برسد ، اجازه دهید 1؛ 0 غیرقابل بازگشت است

محلی [ گزینه ] [ نام [= ارزش ] ...]

برای هر استدلال یک متغیر محلی با نام نام ایجاد شده و مقدار تعیین شده است . گزینه می تواند هر یک از گزینه های پذیرفته شده توسط اعلام شود . هنگامی که محلی در یک تابع استفاده می شود، باعث می شود نام متغیر یک دامنه قابل مشاهده برای آن تابع و فرزندانش محدود شود. با هیچ اپراتوری، محلی لیستی از متغیرهای محلی را به خروجی استاندارد می نویسد. این خطا در استفاده از محلی زمانی است که در داخل یک تابع نیست. وضعیت بازگشت 0 است مگر اینکه محلی خارج از یک تابع استفاده شود، نام نامعتبر عرضه شده است، یا نام یک متغیر readonly است.

خروج

خروج از پوسته ورودی

popd [- n ] [+ n ] [- n ]

حذف نوشته ها از پشته دایرکتوری بدون استدلال، دایرکتوری بالا را از پشته حذف می کند و سی دی را به دایرکتوری جدید جدید می برد. Arguments، اگر عرضه می شود، معانی زیر دارد:

+ n

شمارش nth ورودی را از سمت چپ لیست نشان داده شده توسط dirs ، از صفر شروع می کند. به عنوان مثال: `` popd +0 '' اولین پوشه را حذف می کند، `` popd +1 '' دوم.

- n

شمارش nth ورودی را از سمت راست لیست نشان داده شده توسط dirs ، از صفر شروع می کند. به عنوان مثال: `` popd -0 '' آخرین دایرکتوری را حذف می کند، `` popd -1 '' بعدی را به آخرین.

-n

هنگام حذف دایرکتوری از پشته، تغییرات عادی دایرکتوری را از بین می برد، به طوری که فقط پشته دستکاری می شود.

اگر دستور popd موفق باشد، dirs نیز انجام می شود و وضعیت بازگشت 0 است. popd returns false اگر یک گزینه نامعتبر مواجه می شود، پشته دایرکتوری خالی است، یک پشته فهرست دایرکتوری غیر موجود است یا دایرکتوری تغییر نتواند.

قالب printf [ بحث ]

اشکال فرمت شده را به خروجی استاندارد تحت کنترل فرمت وارد کنید . فرمت یک رشته کاراکتر است که دارای سه نوع از اشیاء است: کاراکترهای ساده، که به سادگی به خروجی استاندارد کپی می شوند، توابع فرار شخصیت، که تبدیل شده و کپی شده به خروجی استاندارد، و مشخصات قالب، که هر کدام باعث چاپ بعدی استدلال پیوسته علاوه بر فرمت استاندارد printf (1)، ٪ b باعث می شود printf برای گسترش توالی فرار backslash در استدلال متناظر، و ٪ q باعث می شود printf به خروجی آرگومان متناظر در یک قالب که می تواند به عنوان ورودی پوسته استفاده مجدد شود.

فرمت به عنوان مورد نیاز برای استفاده از تمام استدلال استفاده مجدد. اگر فرمت نیاز به استدلال بیشتری نسبت به ارائه دارد، خصوصیات فرمت اضافی رفتار می کنند مانند یک مقدار صفر یا رشته null، به صورت مناسب، عرضه شده است. مقدار بازگشت صفر بر موفقیت است، صفر بر صفر است.

pushd [ -n ] [ dir ]

pushd [ -n ] [+ n ] [- n ]

یک دایرکتوری را به بالای پشته دایرکتوری اضافه می کند، یا پشته را می چرخاند، و پشته جدید را به پشته پوشه فعلی کار می کند. بدون استدلال، تبادل دو دایرکتوری بالا و بازگشت 0، مگر اینکه پشته دایرکتوری خالی باشد. Arguments، اگر عرضه می شود، معانی زیر دارد:

+ n

پشته پشته را به طوری که پایگاه داده n (شمارش از سمت چپ لیست نشان داده شده توسط dirs ، شروع با صفر) در بالا است.

- n

پشته پشته را به طوری که دایرکتوری N (شمارش از سمت راست لیست نشان داده شده توسط dirs ، شروع با صفر) در بالا است.

-n

هنگام اضافه کردن دایرکتوری به پشته، تغییرات عادی دایرکتی را متوقف می کند، به طوری که فقط پشته دستکاری می شود.

رشته

دایرکتوری را به پشته دایرکتوری در بالا اضافه می کند، آن را دایرکتوری جدید کار فعلی می کند.

اگر دستور pushd موفق باشد، dirs نیز انجام می شود. در صورت استفاده از فرم اول، pushd 0 را باز می کند مگر اینکه سی دی به دیسک نتواند. با فرم دوم، pushd بازده 0، مگر اینکه پشته دایرکتوری خالی باشد، یک عنصر پشته دایرکتوری غیر موجود وجود دارد، یا تغییر دایرکتوری به دایرکتوری فعلی مشخص شده، نتواند انجام شود.

PWD [ -LP ]

چاپ نام مطلق از دایرکتوری کار فعلی را چاپ کنید. نام پهنای چاپ شده دارای هیچ لینک نمادین نیست اگر گزینه -P ارائه شده باشد یا گزینه -o فیزیکی به دستور builtin مجموعه فعال شده است. اگر گزینه -L مورد استفاده قرار گیرد، نام چاپی ممکن است شامل پیوندهای نمادین باشد. وضعیت بازگشت 0 است، مگر اینکه هنگام خواندن نام دایرکتوری فعلی خطایی رخ دهد یا یک گزینه نامعتبر عرضه شود.

[ -s ] [ -u fd ] [ -t timeout ] [ -a aname ] [ -p prompt ] [ -n nchars ] [ -d delim ] [ نام ...]

یک خط از ورودی استاندارد یا از توصیف کننده فایل fd به عنوان یک argument برای گزینه -u ارسال می شود و کلمه اول به نام اول، کلمه دوم به نام دوم و غیره با leftfarn کلمات و جداسازان مداخلهگر آنها به نام خانوادگی اختصاص داده شده است. اگر کلمات کمتر از جریان ورودی به عنوان نام خوانده می شود، نام های باقیمان مقدار های خالی را تعیین می کنند. شخصیت های IFS برای تقسیم خط به کلمات استفاده می شود. کاراکتر backslash ( \ ) ممکن است برای حذف هر معنی خاص برای شخصیت خوانده شده بعدی و برای ادامه خط استفاده شود. گزینه ها، اگر عرضه شوند، معانی زیر دارند:

هرکسی

کلمات به شاخص های ترتیب متغیر آرایه متغیر aname اختصاص داده می شوند، شروع از 0. aname قبل از هر مقدار جدید اختصاص داده نشده است. آرگومان نام دیگر نادیده گرفته می شود.

-d delim

اولین کاراکتر delim برای خاتمه خط ورودی به جای خط جدید استفاده می شود.

اگر ورودی استاندارد از یک ترمینال بیرون می آید، خط readline ( READLINE بالا را ببینید) برای بدست آوردن خط مورد استفاده قرار می گیرد.

-n nchars

خواندن پس از خواندن خواص nchars بازگشت به جای انتظار برای یک خط کامل از ورودی.

-p فوری

قبل از تلاش برای خواندن هر ورودی، فورمت خط را نمایش می دهد ، بدون یک خط جدید خطی. فوری تنها در صورت ورودی از یک ترمینال نمایش داده می شود.

-r

Backslash به عنوان شخصیت فرار عمل نمی کند. backslash به عنوان بخشی از خط در نظر گرفته شده است. به طور خاص، یک جفت جدید خط جدید ممکن است به عنوان یک خط ادامه یابد.

-s

حالت بی صدا. اگر ورودی از یک ترمینال بیرون می آید، کاراکتر ها هم تکرار نمی شوند.

تاخیر

به دلیل زمان خواندن و خرابی را خواند اگر خط کامل ورودی درون ثانیه از زمان خواندن خوانده نشود. این گزینه هیچ تاثیری ندارد اگر خواندن خواندن ورودی از ترمینال یا یک لوله باشد.

-u fdFP

خواندن ورودی از توصیفگر فایل fd .

اگر هیچ نامی ارائه نمی شود، خط خواندن به متغیر پاسخ داده می شود . کد بازگشتی صفر است، مگر اینکه پایان فایل با آن مواجه شود، زمان خواندن آن یا یک توصیفگر فایل نامعتبر به عنوان argument برای -u ارائه می شود .

readonly [ -apf ] [ نام ...]

نامهای داده شده به صورت Readonly مشخص شده اند مقادیر این نام ممکن است توسط انتساب بعدی تغییر نکند. اگر گزینه -f عرضه شده باشد، توابع مربوط به نام ها به طوری مشخص شده اند. گزینه -a متغیرها را به آرایه محدود می کند. اگر هیچ آرگومان نام داده نشده است، یا اگر گزینه -p ارائه شود، لیستی از تمام نامهای خواندنی چاپ می شود. گزینه -p باعث می شود خروجی در یک فرمت نمایش داده شود که ممکن است به عنوان ورودی دوباره استفاده شود. وضعیت بازگشت 0 است مگر اینکه یک گزینه نامعتبر مواجه شود، یکی از نامها یک نام متغیر پوسته معتبر نیست، یا -f با یک نام که یک تابع نیست عرضه می شود.

بازگشت [ n ]

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

set [ --befhkmnptuvxBCHP ] [ -o option ] [ arg ...]

بدون گزینه، نام و مقدار هر متغیر پوسته در قالب نمایش داده می شود که می تواند به عنوان ورودی مجددا استفاده شود. خروجی مطابق با محلی فعلی مرتب شده است. وقتی گزینه ها مشخص می شوند، ویژگی های پوسته را تعیین می کنند یا خاتمه می دهند. هر استدلالی که بعد از گزینه های پردازش باقی می ماند پردازش می شود به عنوان مقادیر پارامترهای موقعیتی و به ترتیب به $ 1 ، $ 2 ، ... $ n اختصاص داده می شود . گزینه ها، اگر مشخص شوند، معانی زیر دارند:

-a

به طور خودکار عناصر و توابع را علامت بزنید که برای صادرات به محیط دستورات بعدی، اصلاح شده یا ایجاد شده اند.

-b

بلافاصله وضعیت کارهای زمینه پایان یافته را گزارش دهید، نه قبل از اعلان اولیه بعدی. این تنها زمانی کار می کند که کنترل کار فعال باشد.

بلافاصله اگر فرمان ساده ( SHELL GRAMMAR بالا را ببینید) بلافاصله از حالت غیر صفر خارج شوید. پوسته خارج نمی شود، اگر فرمان نتواند بخشی از یک حلقه تا حدی یا در حالی که بخشی از عبارت if باشد ، بخشی از && یا || لیست، و یا اگر مقدار بازگشت فرمان از طریق معکوس شود ! . یک تله در ERR ، اگر تنظیم شده است، قبل از خروج از پوسته اجرا می شود.

-f

غیر فعال کردن گسترش پهنای باند

به یاد داشته باشید مکان دستورات به عنوان آنها برای اعدام نگاه. این به طور پیش فرض فعال است.

-k

تمام استدلال ها در فرم اظهارات انتساب در محیط برای یک فرمان قرار می گیرند، نه فقط کسانی که قبل از نام فرمان.

-m

حالت مانیتور کنترل کار امکان پذیر است این گزینه به طور پیش فرض برای پوسته های تعاملی در سیستم هایی که از آن پشتیبانی می کند (نگاه کنید به JOB CONTROL در بالا). فرایندهای پس زمینه در یک گروه فرایند جداگانه اجرا می شوند و یک خط حاوی وضعیت خروج آنها پس از تکمیل آنها چاپ می شود.

-n

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

-o گزینه نام

نام گزینه می تواند یکی از موارد زیر باشد:

allexport

همانند -a

braceexpand

همانند -B .

emacs

با استفاده از یک ویرایشگر خط فرمان emacs-style، رابط کاربری را ویرایش کنید. این است که به طور پیش فرض هنگامی که پوسته تعاملی فعال است، مگر اینکه پوسته با گزینه --no ویرایش را آغاز کرد.

errexit

همانند -e

هشل

همانند -h .

خودمختار

همانند -H

تاریخ

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

نادیده گرفتن

اثر این است که اگر دستور shell 'IGNOREEOF = 10' اعدام شود ( متغیرهای Shell را در بالا ببینید).

کلمه کلیدی

همانند -k

مانیتور

همانند -m .

noclobber

همانند -C .

noexec

همانند -n

نابلو

همانند -f nolog در حال حاضر نادیده گرفته شده است.

اعلام کردن

همانند -b .

اسم

همانند -u .

onecmd

همانند -t .

فیزیکی

همانند -P .

posix

رفتار رفتار bash را تغییر دهید جایی که عمل پیشفرض از استاندارد POSIX 1003.2 متفاوت است و با استاندارد ( حالت posix ) مطابقت دارد.

ممتاز

همانند -p

عمیق

همانند -v .

vi

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

xtrace

همانند -x .

اگر -o بدون هیچ نام گزینه ای عرضه شود، مقادیر گزینه های فعلی چاپ می شوند. اگر + o با نام option-name تامین شود ، یک سری از دستورات مجموعه برای بازسازی تنظیمات گزینه فعلی بر روی خروجی استاندارد نمایش داده می شود.

حالت مزیت را روشن کنید در این حالت فایل های $ ENV و $ BASH_ENV پردازش نمی شوند، توابع پوسته از محیط به ارث نمی برند و متغیر SHELLOPTS ، اگر در محیط ظاهر می شود، نادیده گرفته می شود. اگر پوسته با شناسه مؤثر (گروهی) برابر با شناسه واقعی (گروه) واقعی شروع شود و گزینه -p ارائه نشده است، این اقدامات گرفته شده است و شناسه موثر کاربر بر روی شناسه واقعی واقعی تنظیم شده است. اگر گزینه -p در هنگام راه اندازی عرضه شود، شناسه موثر تنظیم مجدد نمی شود. روشن کردن این گزینه خاموش باعث می شود که شناسه موثر کاربر و گروه به کاربر واقعی و شناسه گروه تنظیم شود.

خروج بعد از خواندن و اجرای یک دستور.

-u

در هنگام اجرای پارامترها، متغیرهای Unset را بعنوان یک خطا درمان کنید. اگر گسترش در یک متغیر غیر قابل اجرا انجام شود، پوسته پیام خطایی را چاپ می کند و اگر غیر تعاملی باشد، با وضعیت غیر صفر خارج می شود.

-v

چاپ خطوط ورودی پوسته همانطور که آنها خوانده می شود.

-ایکس

بعد از گسترش هر یک از دستورات ساده ، مقدار گسترش یافته PS4 را نمایش می دهد ، سپس دستور و استدلال گسترش یافته آن را نمایش می دهد.

-B

پوسته سبب گسترش بسط می شود (نگاه کنید به گسترش Brace در بالا). این به طور پیش فرض است

-C

در صورت تنظیم، bash یک فایل موجود را با عملگرهای > ، > & ، و <> redirection بازنویسی نمی کند. این می تواند هنگام ایجاد فایل های خروجی با استفاده از اپراتور تغییر مسیر > | به جای > .

-H

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

اگر تنظیم شود، پوسته هنگام اجرای دستورات مانند cd که دایرکتوری کاری فعلی را تغییر می دهد، از لینک نمادین پیروی نمی کند. از آن به جای ساختار دایرکتوری فیزیکی استفاده می کند. به طور پیش فرض، bash در هنگام اجرای دستورات که دایرکتوری جاری را تغییر می دهد، زنجیره منطقی دایرکتوری ها را دنبال می کند.

-

اگر هیچ آرگومان این گزینه را دنبال نکند، سپس پارامترهای موقتی تنظیم نشده است. در غیر این صورت، پارامترهای موقعیتی به arg ها تنظیم می شوند، حتی اگر برخی از آنها با a - آغاز شود.

-

سیگنال پایان گزینه ها، باعث می شود تمام پارامترهای باقیمانده را به پارامترهای موقتی اختصاص داده شود. گزینه های -x و -v خاموش می شوند. اگر هیچ آرگومان وجود نداشته باشد، پارامترهای موقعیتی بدون تغییر باقی می مانند.

گزینه ها به صورت پیش فرض غیر فعال هستند، مگر اینکه مشخص شود. با استفاده از + به جای - باعث می شود که این گزینه ها خاموش شوند. گزینه ها همچنین می توانند به عنوان استدلال برای فراخوانی پوسته مشخص شوند. مجموعه ای از گزینه های فعلی در $ - یافت می شود. وضعیت بازگشت همیشه درست است مگر اینکه یک گزینه نامعتبر مواجه شود.

تغییر [ n ]

پارامترهای موقعیتی از n +1 ... به $ 1 تغییر نام داده می شود .... پارامترهای نشان داده شده توسط اعداد $ # تا $ # - n +1 غیر فعال هستند. n باید عدد غیر منفی کمتر یا برابر با $ # باشد. اگر n برابر 0 است، هیچ پارامتری تغییر نمی کند. اگر n داده نشود، فرض شده است که 1. اگر n از # # بزرگتر باشد، پارامترهای موقعیتی تغییر نمی کنند. وضعیت بازگشت بیشتر از صفر است اگر n از # $ یا کمتر از صفر است؛ 0 در غیر این صورت

shopt [ -pqsu ] [ -o ] [ optname ...]

تغییر مقادیر متغیرهایی که رفتار پوسته اختیاری را کنترل می کنند. بدون گزینه و یا با گزینه -p ، لیستی از تمام گزینه های قابل تنظیم نمایش داده می شود، با نشان دادن اینکه آیا هر یک از آنها تنظیم شده است. گزینه -p باعث می شود خروجی در یک فرم نمایش داده شود که ممکن است به عنوان ورودی دوباره استفاده شود. گزینه های دیگر دارای معانی زیر هستند:

-s

فعال کردن (تنظیم) هر نام انتخاب

-u

غیر فعال کردن (لغو) هر نام انتخاب .

-q

خروجی طبیعی (حالت آرام) را خنثی می کند؛ وضعیت بازگشت نشان می دهد که آیا optname تنظیم شده یا غیر فعال شده است. اگر چندین آرگومان optname با -q داده شوند، وضعیت return برابر صفر است اگر همه optnames فعال باشند؛ غیر صفر در غیر این صورت.

-o

مقادیر optname را محدود به آنهایی که برای گزینه -o به مجموعه builtin تعریف شده محدود می کنند.

اگر هر یک از -s یا -u با هیچ استدلالی optname استفاده شود، صفحه نمایش به ترتیب محدودیتهایی دارد که تنظیم یا غیرفعال شده اند. به غیر از موارد ذکر شده، گزینه های shopt به طور پیش فرض غیر فعال شده اند (unset).

وضعیت بازگشت زمانی که لیست گزینه ها صفر است اگر همه optnames فعال باشد، غیر صفر است. در هنگام تنظیم یا رها کردن گزینه ها، وضعیت بازگشت صفر است مگر اینکه optname یک گزینه پوسته معتبر نیست.

لیست گزینه های shopt :

cdable_vars

اگر مجموعه، یک استدلال به دستور cd builtin که یک پوشه نیست، فرض می شود که نام یک متغیر است که مقدار دایرکتوری است که به آن تغییر می کند.

cdspell

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

checkhash

اگر تنظیم، bash بررسی می کند که یک فرمان در جدول هش وجود دارد قبل از اینکه آن را اجرا کنید. اگر یک دستور hash دیگر وجود نداشته باشد، جستجوی صحیح مسیر انجام می شود.

checkwinsize

اگر بشه ، بعد از هر دستور، اندازه پنجره را بررسی می کند و در صورت لزوم مقادیر LINES و COLUMNS را به روز می کند .

cmdhist

اگر تنظیم، bash تلاش می کند تمام خطوط یک فرمان چند خط را در همان ورودی تاریخ ذخیره کند. این اجازه می دهد تا مجدد ویرایش دستورات چند خطی آسان باشد.

dotglob

اگر مجموعه، bash شامل نام فایل های شروع با '.' در نتایج گسترش پهنمون.

execfail

اگر تنظیم شود، یک پوسته غیر تعاملی خروج نخواهد کرد اگر نمی تواند فایل مشخص شده به عنوان یک آرگومان به دستور exec builtin را اجرا کند. یک پوسته تعاملی اگر خروجی نتواند اجرا شود خروج نمی شود.

expand_aliases

در صورت تنظیم، نام مستعار به همان شکلی که ALIASES در بالا گفته شد گسترش یافته است. این گزینه به صورت پیش فرض برای پوسته های تعاملی فعال است.

بیگانه

اگر تنظیم شود، ویژگی های تطبیق المان گسترش یافته که در بالا در توسعه Pathname توضیح داده شده فعال هستند.

histappend

در صورت تنظیم، لیست تاریخچه به فایل متغیر HISTFILE زمانی که پوسته خارج می شود، به جای رونویسی فایل، اضافه شده است.

histreedit

اگر تنظیم شده است، و readline در حال استفاده است، کاربر فرصتی برای تغییر جایگزین تاریخچه شکست خورده را به شما داده است.

برگرداندن

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

hostcomplete

اگر set و readline در حال استفاده باشد، bash سعی می کند تا وقتی که یک کلمه حاوی @ در حال تکمیل شدن است، انجام تکمیل نام میزبان (در زیر READLINE در بالا تکمیل کنید). این به طور پیش فرض فعال است.

هپونکسیت

در صورت تنظیم، bash SIGHUP را به تمام مشاغل ارسال می کند وقتی یک پوسته ورودی تعاملی خارج می شود.

interactive_comments

اگر مجموعه، اجازه دهید یک کلمه با شروع با # برای ایجاد کلمه و تمام کاراکترهای باقی مانده در آن خط در یک پوسته تعاملی نادیده گرفته شود (نگاه کنید به COMMENTS در بالا). این گزینه به طور پیش فرض فعال است.

لیتیم

اگر تنظیم شده و گزینه cmdhist فعال باشد، دستورات چند خطی به جای استفاده از جداسازهای نقطه ابهام در هر جای سابقه با خطوط جدید ذخیره شده ذخیره می شوند.

login_shell

پوسته این گزینه را اگر آن را به عنوان یک پوسته ورود آغاز شده است (به ذکر نکات بالا توجه کنید). ارزش ممکن است تغییر نکند

mailwarn

اگر تنظیم شده و یک فایل که bash برای ایمیل بررسی شده است از آخرین بار چک شده دسترسی داشته باشد، پیام '`ایمیل در mailfile خوانده شده' 'نمایش داده شده است.

no_empty_cmd_completion

اگر تنظیم شود و خط readline در حال استفاده است، bash سعی نکنید PATH را برای تکمیل های احتمالی جستجو کند، زمانی که تکمیل روی یک خط خالی انجام شود.

nocaseglob

در صورت تنظیم، bash نام فایل ها را در یک حالت بدون حساسیت در هنگام اجرای اصطلاح گسترش می یابد (نگاه کنید به گسترش Pathname در بالا).

nullglob

در صورت تنظیم، bash اجازه می دهد الگوهایی که با هیچ فایلی منطبق نباشند (به قسمت Expand Pathname بالا مراجعه کنید) برای گسترش به یک رشته خالی، به جای خود.

progcomp

اگر مجموعه، امکانات تکمیل برنامه ریزی شده (مشاهده کامل برنامه ریزی بالا) فعال شوند. این گزینه به طور پیش فرض فعال است.

promptvars

اگر تنظیم شود، رشته های سریع بعد از متغیر و پارامتر گسترش می یابند