File (command)
فائل کمانڈ یونیکس اور یونیکس جیسے آپریٹنگ سسٹمز کا ایک معیاری پروگرام ہے جو کمپیوٹر فائل میں موجود ڈیٹا کی قسم کو پہچانتا ہے۔ فائل کا اصل ورژن 1973 میں یونکس ریسرچ ورژن 4 میں شروع ہوا۔ سسٹم V نے کئی اہم تبدیلیوں کے ساتھ ایک بڑی اپ ڈیٹ لائی، خاص طور پر فائل کی قسم کی معلومات کو بائنری میں مرتب کرنے کے بجائے بیرونی ٹیکسٹ فائل میں منتقل کیا۔ زیادہ تر بڑے بی ایس ڈی اور لینکس ڈسٹری بیوشن ایک مفت، اوپن سورس ری امپلیمینٹیشن کا استعمال کرتے ہیں جو 1986-87 میں ایان ڈارون نے شروع سے لکھا تھا۔ یہ فائل ٹائپ کی معلومات کو ٹیکسٹ فائل میں سسٹم V ورژن پر مبنی فارمیٹ کے ساتھ رکھتا ہے۔ اس میں 1989 میں جیوف کولئیر نے توسیع کی تھی اور اس کے بعد سے اسے گائے ہیرس، کرس لوتھ اور ایرک فشر سمیت بہت سے دوسرے لوگوں کی طرف سے ان پٹ ملا ہے۔ 1993 کے آخر سے اس کی دیکھ بھال کا اہتمام کرسٹوس زولس نے کیا ہے۔ اوپن بی ایس ڈی سسٹم کا اپنا سب سیٹ نفاذ شروع سے لکھا ہوا ہے، لیکن پھر بھی جادوئی فائل فارمیٹڈ معلومات کے ڈارون/زولس مجموعہ کا استعمال کرتا ہے۔ کمانڈ کو آئی بی ایم آئی آپریٹنگ سسٹم میں بھی پورٹ کیا گیا ہے۔ سنگل یونکس اسپیسیفیکیشن (ایس یو ایس) وضاحت کرتا ہے کہ کمانڈ لائن پر مخصوص فائل پر ٹیسٹوں کا ایک سلسلہ انجام دیا جاتا ہے: اگر فائل کو پڑھا نہیں جا سکتا، یا اس کی یونکس فائل کی قسم کا تعین نہیں کیا گیا ہے، تو فائل پروگرام اس بات کی نشاندہی کرے گا کہ فائل پر کارروائی کی گئی تھی لیکن اس کی قسم کا تعین نہیں کیا گیا تھا۔ فائل کو ڈائریکٹری، ایف آئی ایف او، ساکٹ، بلاک اسپیشل فائل کی اقسام کا تعین کرنے کے قابل ہونا چاہیے، اور کریکٹر اسپیشل فائل صفر لمبائی والی فائلوں کی شناخت کی جاتی ہے کیونکہ فائل کے ابتدائی حصے پر غور کیا جاتا ہے اور فائل پوزیشن حساس ٹیسٹ استعمال کرنے کے لیے ہوتی ہے۔ پوری فائل پر غور کیا جاتا ہے اور فائل سیاق و سباق حساس ٹیسٹ استعمال کرنے کے لیے ہوتی ہے۔ فائل کی شناخت ڈیٹا فائل فائل کے طور پر کی جاتی ہے۔ پوزیشن حساس ٹیسٹ عام طور پر فائل کے اندر مختلف مقامات کو جادوئی نمبروں کے متن کے ڈیٹا بیس سے ملا کر نافذ کیے جاتے ہیں (استعمال سیکشن دیکھیں)۔ یہ دوسرے آسان طریقوں جیسے فائل ایکسٹینشن اور مائیم جیسی اسکیموں سے مختلف ہے۔ سسٹم V کے نفاذ، ایان ڈارون کے نفاذ، اور اوپن بی ایس ڈی کے نفاذ میں، فائل کمانڈ لیڈ بائٹس کی تحقیقات کو چلانے کے لیے ڈیٹا بیس کا استعمال کرتا ہے۔ اس ڈیٹا بیس کو جادو نامی فائل میں لاگو کیا جاتا ہے، جس کا مقام عام طور پر/وغیرہ/جادو،/یو ایس آر/شیئر/فائل/جادو یا اسی طرح کے مقام پر ہوتا ہے۔ استعمال ایس یو ایس مندرجہ ذیل اختیارات کو لازمی قرار دیتا ہے:-ایم فائل، پوزیشن حساس ٹیسٹوں پر مشتمل خصوصی طور پر فارمیٹ کی گئی فائل کی وضاحت کریں ؛ ڈیفالٹ پوزیشن حساس ٹیسٹ اور سیاق و سباق حساس ٹیسٹ نہیں کیے جائیں گے۔ - m فائل، جہاں تک-M کا تعلق ہے، لیکن فائل میں موجود ٹیسٹ کے بعد ڈیفالٹ ٹیسٹ کیے جائیں گے۔ - d، دی گئی فائل کے لیے ڈیفالٹ پوزیشن حساس اور سیاق و سباق حساس ٹیسٹ انجام دیں ؛ یہ ڈیفالٹ طرز عمل ہے جب تک کہ-M یا-m کی وضاحت نہ کی جائے۔ - h، علامتی لنکس کا حوالہ نہ دیں جو موجودہ فائل یا ڈائرکٹری کی طرف اشارہ کرتے ہیں۔ - L، علامتی لنک کا حوالہ دیں جو موجودہ فائل یا ڈائرکٹری کی طرف اشارہ کرتا ہے۔ - i، فائل کو اس کی شناخت کرنے کے علاوہ مزید درجہ بندی نہ کریں: غیر موجود، بلاک اسپیشل فائل، کریکٹر اسپیشل فائل، ڈائرکٹری، ایف آئی ایف او، ساکٹ، علامتی لنک، یا باقاعدہ فائل۔ لینکس اور بی ایس ڈی سسٹم اس آپشن کے ساتھ مختلف طریقے سے برتاؤ کرتے ہیں اور اس کے بجائے ایک انٹرنیٹ میڈیا ٹائپ ("مائیم ٹائپ") آؤٹ پٹ کرتے ہیں جو تسلیم شدہ فائل فارمیٹ کی شناخت کرتا ہے۔ دیگر یونکس اور یونکس جیسے آپریٹنگ سسٹم ان سے زیادہ اختیارات شامل کر سکتے ہیں۔ ایان ڈارون کے نفاذ میں بہت سی دوسری چیزوں کے علاوہ-'خصوصی فائلیں'،-k 'جاری رکھیں' یا-r 'خام' (نیچے دی گئی مثالیں) شامل ہیں۔ کمانڈ صرف یہ بتاتی ہے کہ فائل کیسی نظر آتی ہے، نہ کہ یہ کیا ہے (اس صورت میں جہاں فائل مواد کو دیکھتی ہے)۔ کسی فائل میں جادوئی نمبر ڈال کر پروگرام کو بے وقوف بنانا آسان ہے جس کا مواد اس سے میل نہیں کھاتا ہے۔ اس طرح کمانڈ مخصوص حالات کے علاوہ حفاظتی ٹول کے طور پر قابل استعمال نہیں ہے۔ مثال کے طور پر $فائل file.c file.c: C پروگرام ٹیکسٹ $فائل پروگرام: ELF 32-بٹ LSB قابل عمل، انٹیل 80386، ورژن 1 (SYSV)، متحرک طور پر منسلک (مشترکہ libs کا استعمال کرتا ہے)، اسٹرپڈ $فائل/دیو/ایچ ڈی اے 1/دیو/ایچ ڈی اے 1: بلاک اسپیشل (0/0) $فائل-ایس/دیو/ایچ ڈی اے 1/دیو/ایچ ڈی اے 1: لینکس/آئی 386 ایکسٹ 2 فائل سسٹم نوٹ کریں کہ-ایس ایک غیر معیاری آپشن ہے جو صرف ایان ڈارون برانچ پر دستیاب ہے، جو فائل کو ڈیوائس فائلوں کو پڑھنے اور ان کے مندرجات کو صرف ڈیوائس فائلوں کے طور پر شناخت کرنے کے بجائے شناخت کرنے کی کوشش کرنے کو کہتا ہے۔ عام طور پر فائل ڈیوائس فائلوں کو پڑھنے کی کوشش نہیں کرتی کیونکہ ایسی فائل کو پڑھنے سے ناپسندیدہ مضر اثرات ہو سکتے ہیں۔ $فائل-k-r libmagic-dev_5.35-4_armhf.deb #(لینکس پر) libmagic-dev_5.35-4_armhf.deb: ڈیبین بائنری پیکیج (فارمیٹ 2)-موجودہ ar آرکائیو-ڈیٹا ایان ڈارون کے غیر معیاری آپشن-k کے ذریعے پروگرام پہلی ہٹ ملنے کے بعد نہیں رکتا، بلکہ دوسرے مماثل نمونوں کی تلاش کرتا ہے۔ - r آپشن، جو کچھ ورژن میں دستیاب ہے، غیر پرنٹ ہونے والے نئے لائن کردار کو اس کی آکٹل نمائندگی کے بجائے اس کی خام شکل میں ظاہر کرنے کا سبب بنتا ہے۔ $فائل compressed.gz compressed.gz: gzip کمپریسڈ ڈیٹا، ڈیفلیٹڈ، اصل فائل کا نام، 'کمپریسڈ'، آخری ترمیم شدہ: Thu 26 جنوری 14:08:23 2006، os: Unix $فائل-i compressed.gz #(لینکس پر) compressed.gz: ایپلی کیشن/x-gzip ؛ چارسیٹ = بائنری $فائل data.ppm data.ppm: Netpbm PPM "robits" امیج ڈیٹا $فائل/بن/کیٹ/بن/کیٹ: میک-O یونیورسل بائنری 2 آرکیٹیکچرز/بن/کیٹ کے ساتھ (فن تعمیر ppc7400 کے لیے): میک-O قابل عمل ppc/بن/کیٹ (فن تعمیر i386 کے لیے) لیب میجک لائبریری فائل کے ایان ڈارون/کرسٹوس زولس ورژن کے ورژن 4 کے مطابق، فائل کی فعالیت کو لیب میجک لائبریری میں شامل کیا گیا ہے جو سی (اور سی-مطابقت پذیر) لنکنگ کے ذریعے قابل رسائی ہے۔ فائل کو اس لائبریری کا استعمال کرتے ہوئے لاگو کیا جاتا ہے۔ حوالہ جات بیرونی روابط دستی صفحات-ایک غیر آئن ڈارون کا نفاذ-ایک غیر آئن ڈارون، غیر ایس یو ایس کا نفاذ دیگر فائن فری فائل کمانڈ-ایان ڈارون کے فائل کے ورژن کے لیے ہوم پیج جو بی ایس ڈی اور لینکس کی بڑی تقسیم میں استعمال ہوتا ہے۔ میلنگ لسٹ بن واک جاری کرتی ہے، ایک فرم ویئر تجزیہ ٹول جو لبمیجک دستخطی ٹرائیڈ پر مبنی فائلوں کو تراشتا ہے، ایک متبادل جو اعداد و شمار کی بنیاد پر درجہ بند جوابات (صرف ایک کے بجائے) فراہم کرتا ہے۔ معیاری یونیکس پروگرام یونیکس ایس یو ایس 2008 یوٹیلیٹیز پلان 9 آئی بی ایم آئی کیو شیل کمانڈز کو کمانڈ کرتا ہے