Alias (command)
کمپیوٹنگ میں، عرف مختلف کمانڈ لائن ترجمانوں (شیلز) میں ایک کمانڈ ہے، جو کسی لفظ کو دوسرے سٹرنگ سے تبدیل کرنے کے قابل بناتا ہے۔ یہ بنیادی طور پر سسٹم کمانڈ کو مختصر کرنے، یا باقاعدگی سے استعمال ہونے والی کمانڈ میں ڈیفالٹ دلائل شامل کرنے کے لیے استعمال ہوتا ہے۔ عرف یونیکس شیلز، امیگاڈوس، 4 ڈی او ایس/4 این ٹی، کولیبری او ایس، ونڈوز پاور شیل، ریکٹ او ایس، اور ای ایف آئی شیل میں دستیاب ہے۔ ایم ایس-ڈاس اور مائیکروسافٹ ونڈوز آپریٹنگ سسٹمز میں الگ کرنے کی فعالیت ڈاسکی کمانڈ لائن یوٹیلیٹی کے ذریعے فراہم کی جاتی ہے۔ ایک عرف شیل سیشن کی زندگی تک رہے گا۔ باقاعدگی سے استعمال ہونے والے عرفی ناموں کو شیل کی آر سی فائل (جیسے. bashrc) سے سیٹ کیا جا سکتا ہے تاکہ وہ متعلقہ شیل سیشن کے آغاز پر دستیاب ہوں۔ عرفی کمانڈ یا تو براہ راست کنفیگ فائل میں لکھے جا سکتے ہیں یا کسی علیحدہ فائل سے حاصل کیے جا سکتے ہیں۔ یونکس میں، عرفیت سی شیل میں متعارف کروائے گئے تھے اور نسل کے خولوں جیسے ٹی سی ایس ایچ اور بیش میں زندہ رہتے ہیں۔ سی شیل عرفیت سختی سے ایک لائن تک محدود تھے۔ یہ سادہ شارٹ کٹ کمانڈز بنانے کے لیے مفید تھا، لیکن زیادہ پیچیدہ تعمیرات کے لیے نہیں۔ بورن شیل کے پرانے ورژنوں میں عرفی نام پیش نہیں کیے گئے، لیکن اس نے افعال فراہم کیے، جو سی ایس ایچ عرفی تصور سے زیادہ طاقتور ہیں۔ سی ایس ایچ سے عرفیت کا تصور بورن اگین شیل (باش) اور کارن شیل (کے ایس ایچ) میں درآمد کیا گیا تھا۔ ایسے خولوں کے ساتھ جو افعال اور عرفیت دونوں کی حمایت کرتے ہیں لیکن کوئی پیرامیٹرائزڈ ان لائن شیل اسکرپٹ نہیں ہیں، جہاں بھی ممکن ہو افعال کے استعمال کی سفارش کی جاتی ہے۔ ایسے معاملات جہاں عرفیت ضروری ہیں ان میں ایسے حالات شامل ہیں جہاں جکڑے ہوئے عرفیت کی ضرورت ہوتی ہے (باش اور کش)۔ کمانڈ کو آئی بی ایم آئی آپریٹنگ سسٹم میں بھی پورٹ کیا گیا ہے۔ استعمال عرفیت تخلیق کرنا عام یونکس شیل نام/قدر کے جوڑوں کو عرفیت کمانڈ کے لیے دلائل کے طور پر فراہم کر کے غیر مستقل عرفیت بنائے جا سکتے ہیں۔ یونکس شیلز میں نحو یہ ہے: عرف جی سی = 'گٹ کمٹ' سی شیل سی شیل یا ٹی سی ایس ایچ شیل میں متعلقہ نحو یہ ہے: عرف جی سی "گٹ کمٹ" اس عرف کا مطلب ہے کہ جب شیل میں کمانڈ جی سی کو پڑھا جائے گا تو اسے گٹ کمٹ سے تبدیل کر دیا جائے گا اور اس کے بجائے اس کمانڈ کو انجام دیا جائے گا۔ 4 ڈی او ایس/4 این ٹی شیل میں درج ذیل نحو کا استعمال سی پی کو 4 ڈی او ایس کاپی کمانڈ کے عرف کے طور پر بیان کرنے کے لیے کیا جاتا ہے: عرف سی پی کاپی ونڈوز پاور شیل ونڈوز پاور شیل میں نیا عرف بنانے کے لیے، نیا عرف سی ایم ڈیلیٹ استعمال کیا جا سکتا ہے: نیا عرف سی آئی کاپی آئٹم یہ سی آئی نامی ایک نیا عرف تخلیق کرتا ہے جسے عمل میں لانے پر کاپی آئٹم سی ایم ڈیلیٹ سے تبدیل کر دیا جائے گا۔ پاور شیل میں، کمانڈ کے لیے ڈیفالٹ دلائل کی وضاحت کے لیے عرفیت استعمال نہیں کیا جا سکتا۔ اس کے بجائے، یہ پاور شیل ترجیحی متغیرات میں سے ایک، $پی ایس ڈیفالٹ پیرامیٹر ویلیوز کلیکشن میں آئٹمز شامل کرکے کیا جانا چاہیے۔ فی الحال متعین عرفی نام دیکھنا متعین عرفی نام دیکھنے کے لیے درج ذیل کمانڈ استعمال کیے جا سکتے ہیں: عرفی #بغیر دلائل کے استعمال کیا گیا ؛ تمام موجودہ عرفی نام عرفی-p #فہرست عرفی نام کی ایک فہرست اس طرح سے دکھاتا ہے جو آؤٹ پٹ کو سورس کرکے دوبارہ تخلیق کرنے کی اجازت دیتا ہے۔ 4 ڈی او ایس/4 این ٹی اور پاور شیل عرفی مائی الیاس #میں دستیاب نہیں ہے۔ یونیکس شیلز میں، عرفی نام استعمال کرتے وقت عرفی نام میں کسی بھی کردار کا حوالہ دے کر عرفی نام کو ختم کرنا ممکن ہے۔ مثال کے طور پر، مندرجہ ذیل عرفیت کی تعریف پر غور کریں: عرف ls = 'ls-la' اس عرفیت کو ختم کرنے اور ls کمانڈ کو اس طرح انجام دینے کے لیے جیسا کہ اس کی اصل تعریف کی گئی تھی، درج ذیل نحو استعمال کی جا سکتی ہے: 'ls' یا \ls 4 ڈی او ایس/4 این ٹی شیل میں عرفیت کو ستارے سے پہلے لگا کر ختم کرنا ممکن ہے۔ مثال کے طور پر، مندرجہ ذیل عرفیت کی تعریف پر غور کریں: عرف دیر = * دیر/2/پی دیر کی دوسری مثال میں ستارے کی وجہ سے غیر متزلزل دیر کو طلب کیا جاتا ہے، جس سے تکراری عرفیت کی توسیع کو روکا جاتا ہے۔ نیز صارف کمانڈ لائن پر اسی نحو کا استعمال کرتے ہوئے ڈائر کا غیر متزلزل طرز عمل حاصل کر سکتا ہے: * ڈائر عرفیت تبدیل کرنا ونڈوز پاور شیل میں، سیٹ فعل کو عرف سی ایم ڈیلیٹ کے ساتھ موجودہ عرفیت کو تبدیل کرنے کے لیے استعمال کیا جا سکتا ہے: سیٹ-ایلیاس سی آئی سی ایل ایس عرف اب سی ایل ایس کمانڈ کی طرف اشارہ کرے گا۔ 4 ڈی او ایس/4 این ٹی شیل میں، ایسٹ کمانڈ ایک موجودہ عرف میں ترمیم کرنے کے لیے ایک انٹرایکٹو کمانڈ لائن فراہم کرتا ہے: ایسٹ/اے سی پی دی/اے عرف سی پی میں ترمیم کرنے کا سبب بنتا ہے، اسی نام کے ماحولیاتی متغیر کے برخلاف۔ عرفیت ہٹانا یونکس شیلز اور 4 ڈی او ایس/4 این ٹی میں، عرفیت کو یونیلیاس کمانڈ پر عمل کرتے ہوئے ہٹایا جا سکتا ہے: یونیلیاس کاپی #کاپی عرف یونیلیاس کو ہٹاتا ہے-a #The-a سوئچ تمام عرفیت کو ہٹا دے گا ؛ 4 ڈی او ایس/4 این ٹی یونیلیاس * #4 ڈی او ایس/4 این ٹی کے مساوی 'یونیلیاس-a' میں دستیاب نہیں ہے-وائلڈ کارڈ سپورٹ کیے جاتے ہیں۔ ونڈوز پاور شیل میں، عرفیت کو عرفیت سے ہٹایا جا سکتا ہے: ہٹانے والے آئٹم کا استعمال کرتے ہوئے ڈرائیو کریں: ہٹانے والے آئٹم عرفیت: سی آئی #سی آئی عرفیت کو ہٹاتا ہے چیننگ ایک عرفیت عام طور پر صرف پہلے لفظ کی جگہ لے لیتا ہے۔ لیکن کچھ خول، جیسے اور، ترتیب یا الفاظ کو تبدیل کرنے کی اجازت دیتے ہیں۔ یہ خاص خصوصیت فنکشن میکانزم کے ذریعے دستیاب نہیں ہے۔ عام نحو یہ ہے کہ ٹریلنگ اسپیس کردار کے ساتھ پہلے عرف کی وضاحت کی جائے۔ مثال کے طور پر، دو عرفیتوں کا استعمال کرتے ہوئے: عرف فہرست = 'ls' #سلسلہ بندی عرف کو متحرک کرنے کے لیے ٹریلنگ اسپیس کو نوٹ کریں لمبی فہرست کے لیے لمبا = '-فلاش' #آپشنز سے ls کی اجازت دیتا ہے: لمبی فہرست کے لیے لمبی مائی فائل #"ls-فلاش مائی فائل" بن جاتی ہے جب طویل فہرست کے لیے چلائی جاتی ہے، جہاں "لانگ" کا بھی عرفیت کے طور پر جائزہ لیا جاتا ہے۔ کمانڈ دلائل سی شیل میں، دلائل کو سٹرنگ کا استعمال کرتے ہوئے کمانڈ کے اندر سرایت کیا جا سکتا ہے۔ مثال کے طور پر، اس عرف کے ساتھ: عرف ls-more 'ls\! ڈائرکٹریز وغیرہ اور/یو ایس آر کے مندرجات کو درج کرنے کے لیے، ہر اسکرین فل کے بعد رکتے ہوئے، 'ls-more/ethe/usr کو بڑھا کر ls/ethe/usr | more کر دیا جاتا ہے۔ اس کے بغیر، عرف ls-مور 'ls | more' اس کے بجائے ls | مزید/وغیرہ/usr تک پھیل جائے گا جو غلط طریقے سے ڈائریکٹریز کو مزید میں کھولنے کی کوشش کرتا ہے۔ بیس اور کارن شیل اس کے بجائے شیل فنکشن استعمال کرتے ہیں-نیچے § متبادل دیکھیں۔ متبادل عرفیت کو عام طور پر سادہ رکھا جانا چاہیے۔ جہاں یہ آسان نہیں ہوگا، عام طور پر مندرجہ ذیل میں سے کسی ایک کا استعمال کرنے کی سفارش کی جاتی ہے: شیل اسکرپٹ، جو بنیادی طور پر نئے سسٹم کمانڈ بنانے کی مکمل صلاحیت فراہم کرتے ہیں۔ صارف کے پی اے ٹی ایچ میں علامتی لنکس (جیسے/بن)۔ یہ طریقہ کمانڈ کو کال کرنے کا ایک اضافی طریقہ فراہم کرنے کے لیے مفید ہے، اور بعض صورتوں میں کمانڈوں کی چھوٹی تعداد کے لیے دفن کمانڈ فنکشن تک رسائی کی اجازت دے سکتا ہے جو آپریشن کا طریقہ منتخب کرنے کے لیے اپنے دعوت نام کا استعمال کرتے ہیں۔ شیل فنکشنز، خاص طور پر اگر بنائی جانے والی کمانڈ کو شیل کے اندرونی رن ٹائم ماحول میں ترمیم کرنے کی ضرورت ہو (جیسے کہ ماحولیاتی متغیرات)، شیل کی موجودہ ورکنگ ڈائرکٹری کو تبدیل کرنے کی ضرورت ہے، یا اسے اس طرح سے نافذ کیا جانا چاہیے جو اس بات کی ضمانت دیتا ہے کہ وہ کمانڈ سرچ پاتھ میں کسی بھی چیز کے لیے ظاہر ہوتا ہے لیکن ایک انٹرایکٹو شیل (خاص طور پر اس کا کوئی "محفوظ" ورژن، وغیرہ)۔ عرفیت کی سب سے عام شکل، جو کمانڈ میں صرف چند آپشنز کا اضافہ کرتی ہے اور پھر باقی کمانڈ لائن کو شامل کرتی ہے، اس پیٹرن کے بعد آسانی سے شیل فنکشنز میں تبدیل کیا جا سکتا ہے: عرف ll = 'ls-Flaus' #long لسٹنگ، عرف ll () {ls-Flaus "$@" ؛} #long لسٹنگ، فنکشن کسی فنکشن کو خود کو بار بار کال کرنے سے روکنے کے لیے، کمانڈ استعمال کریں: ls () {کمانڈ ls-رنگ = آٹو "$@" ؛ پرانے بورن شیلز میں کمانڈ ls کے بجائے/بن/ls استعمال کریں۔ حوالہ جات مزید پڑھنے کے لیے بیرونی لنکس بیس مین پیج عرف عرف کمانڈ بذریعہ لینکس انفارمیشن پروجیکٹ (LINFO) عرف IBM i Qshell کمانڈز ری ایکٹ او ایس کمانڈز ونڈوز کمانڈز یونکس SUS2008 یوٹیلیٹیز ونڈوز ایڈمنسٹریشن