foo() any-command
বোর্ন সিনট্যাক্স কোনো বোর্ন মত শেল কিন্তু দ্বারা সমর্থিত নয় bash
, yash
এবং সাম্প্রতিক সংস্করণটি posh
(শুধুমাত্র যৌগ কমান্ড সমর্থন যা)। (বোর্ন শেল এবং এটিএন্ডটি বাস্তবায়ন কোনও যৌগিক কমান্ড ksh
না থাকলে সমর্থন করে foo() any-command > redirections
না any-command
)।
foo() any-compound-command
(যৌগ উদাহরণ কম্যান্ড: { cmd; }
, for i do echo "$i"; done
, (cmd)
... সবচেয়ে বেশি ব্যবহৃত হচ্ছে { ...; }
)
পসিক্স সিনট্যাক্সটি কোনও বোর্নের মতো শেল এবং আপনি সাধারণত ব্যবহার করতে চান এমন একটি দ্বারা সমর্থিত।
function foo { ...; }
এটি কর্ন শেল সিনট্যাক্স, যা বোর্ন সিনট্যাক্সের পূর্বাভাস দেয়। শুধুমাত্র এটি ব্যবহার করুন যদি কর্ন শেলটির এটিএন্ডটি বাস্তবায়নের জন্য বিশেষভাবে লেখা হয় এবং সেখানে এটি প্রাপ্ত নির্দিষ্ট চিকিত্সার প্রয়োজন হয়। এই সিনট্যাক্সটি পসিক্স নয়, তবে এটি দ্বারা সমর্থিত bash
, yash
এবং zsh
কর্ন শেলের সাথে সামঞ্জস্যের জন্য যদিও এই শেলগুলি (এবং pdksh
কর্ন শেলের মূল ভিত্তিযুক্ত রূপগুলি) এটি স্ট্যান্ডার্ড সিনট্যাক্সের চেয়ে আলাদা মনে করে না।
function foo () { ...; }
কোনও শেলের সিনট্যাক্স এবং ব্যবহার করা উচিত নয় । এটা শুধুমাত্র দ্বারা দুর্ঘটনা দ্বারা সমর্থিত হতে ঘটবে bash
, yash
, zsh
এবং pdksh
Korn থেকে শেলের ভিত্তিক রূপগুলো। ঘটনাচক্রে, এটি awk
ফাংশন সিনট্যাক্সও।
আমরা যদি রহস্যজনক তালিকায় নামতে থাকি,
function foo() other-compound-command
(মত function foo() (subshell)
বা function foo() for i do; ... done
) আরও খারাপ। এটি সমর্থিত bash
, yash
এবং zsh
, তবে ksh নয়, এমনকি- pdksh
ভিত্তিক বৈকল্পিক।
যদিও:
function foo() simple command
শুধুমাত্র দ্বারা সমর্থিত zsh
।
function baz { echo "baz"; }
। গ্রেগেটের উইকিতে বাশিজম দেখুন ।