|
|
سطر 2: |
سطر 2: |
| [[تصنيف: Ruby]] | | [[تصنيف: Ruby]] |
| [[تصنيف: Ruby ENV]] | | [[تصنيف: Ruby ENV]] |
| كائنات الصنف<code>ENV</code> هي مجريات مجلدات (directory streams) في نظام الملفات الأساسي. فهي توفر مجموعة من الطرق لعرض المجلدات ومحتوياتها. انظر صفحة [[Ruby/File|File]] لمزيد من المعلومات.
| | الصنف<code>ENV</code> يشبه دوال التجزئة (hash-like accessor) لبيئة المتغيرات. |
| | |
| يحتوي المجلد المستخدم في الأمثلة الموجودة في صفحات التوابع ملفين عاديين (<code>config.h</code> و <code>main.rb</code>) ، والمجلد الأب (<code>..</code>) ، والمجلد نفسه (<code>.</code>).
| |
| ==توابع الصنف العامة (Public Class Methods)== | | ==توابع الصنف العامة (Public Class Methods)== |
|
| |
|
| === [[Ruby/Dir/5B-5D|التابع []]] === | | === [[Ruby/Dir/5B-5D|التابع []]] === |
| يكافئ التابع <code>Dir[]</code> استدعاء <code>Dir.glob([string,...], 0)</code>.
| |
|
| |
| === [[Ruby/Dir/chdir|التابع <code>chdir</code>]] ===
| |
| يستبدل التابع <code>chdir</code> مجلد العمل (working directory) الحالي للعملية ويعيّن مكانه السلسلة النصية المعطاة.
| |
|
| |
| === [[Ruby/Dir/children|التابع children]] ===
| |
| يعيد التابع <code>children</code> مصفوفة تحتوي جميع أسماء الملفات في المجلد المحدد باستثناء "<code>.</code>" و "<code>..</code>". في حالة عدم وجود المجلد المحدد، فسيُطلق الخطأ<code>SystemCallError</code>.
| |
|
| |
| === [[Ruby/Dir/chroot|التابع chroot]] ===
| |
| يغير التابع <code>chroot</code> جذر (root) نظام الملفات الخاص بالعملية (process). فقط العمليات ذات الامتياز (privileged process) مُخوّلة لاستدعاء هذا التابع.
| |
|
| |
| === [[Ruby/Dir/delete|التابع delete]] ===
| |
| يمحو التابع <code>delete</code> المجلد المحدد، سيُطلق خطأ من صنف فرعي (subclass) من <code>SystemCallError</code> في حال لم يكن المجلد موجودًا.
| |
|
| |
| === [[Ruby/Dir/each child|التابع each_child]] ===
| |
| يستدعي التابع <code>each_child</code> الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد، باستثناء "<code>..</code>" و "<code>.</code>". حيث يمُمرّر أسماء تلك الملفات كوسائط للكتلة.
| |
|
| |
| === [[Ruby/Dir/delete|التابع delete]] ===
| |
| يمحو التابع <code>delete</code> المجلد المحدد، سيُطلق خطأ من صنف فرعي (subclass) من <code>SystemCallError</code> في حال لم يكن المجلد موجودًا.
| |
|
| |
| === [[Ruby/Dir/empty|التابع ?empty]] ===
| |
| يتحقق التابع <code>?empty</code> مما إذا كان المجلد المعطى فارغًا.
| |
|
| |
| === [[Ruby/Dir/entries|التابع entries]] ===
| |
| يعيد التابع <code>entries</code> مصفوفة تحتوي جميع أسماء الملفات الموجودة في المجلد المحدد. في حال عدم وجود المجلد المحدد، فسيُطلق الخطأ <code>SystemCallError</code>.
| |
|
| |
| === [[Ruby/Dir/exist|التابع ?exist]] ===
| |
| يتحقق التابع <code>?exist</code> مما إذا كان الملف المعطى مجلدًا.
| |
|
| |
| === [[Ruby/Dir/exists|التابع exists]] ===
| |
| هذا التابع صار متجاوزا، لا تستخدمه. انظر التابع <code>[[Ruby/Dir/exist|?exist]]</code>.
| |
|
| |
| === [[Ruby/Dir/foreach|التابع foreach]] ===
| |
| يستدعي التابع <code>foreach</code> الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد. حيث يمُمرّر أسماء تلك الملفات كوسائط للكتلة.
| |
|
| |
| === [[Ruby/Dir/getwd|التابع getwd]] ===
| |
| يعيد التابع <code>getwd</code> مسار مجلد العمل (working directory) الحالي للعملية (process) على شكل سلسلة نصية.
| |
|
| |
| === [[Ruby/Dir/glob|التابع glob]] ===
| |
| يوسّع التابع <code>glob</code> الوسيط الممرّر <code>pattern</code>، والذي هو عبارة عن سلسلة نصية نمطية (pattern string) أو مصفوفة من السلاسل النصية النمطية، ويعيد مصفوفة تحتوي أسماء الملفات المتطابقة لذلك النمط.
| |
|
| |
| === [[Ruby/Dir/home|التابع home]] ===
| |
| يعيد التابع <code>home</code> المجلد الرئيسي (home directory) للمستخدم الحالي أو للمستخدم المعطى في حال إعطائه.
| |
|
| |
| === [[Ruby/Dir/mkdir|التابع mkdir]] ===
| |
| ينشئ التابع <code>mkdir</code> مجلدًا جديدًا.
| |
|
| |
| === [[Ruby/Dir/new|التابع new]] ===
| |
| يعيد التابع <code>new</code> كائنًا مجلديًا (directory object) جديدًا خاصًا بالمجلد المعطى.
| |
|
| |
| === [[Ruby/Dir/open|التابع open]] ===
| |
| في حال عدم إعطاء كتلة، فإنّ التابع <code>open</code> هو مرادف لـ <code>Dir::new</code>. وفي حالة إعطاء كتلة، فسيُمرّر إليها <code>aDir</code>كمعامل.
| |
|
| |
| === [[Ruby/Dir/pwd|التابع pwd]] ===
| |
| يعيد التابع <code>pwd</code> مسار مجلد العمل (working directory) الحالي للعملية (process) على شكل سلسلة نصية.
| |
|
| |
| === [[Ruby/Dir/rmdir|التابع rmdir]] ===
| |
| يمحو التابع <code>rmdir</code> المجلد المحدد، سيُطلق خطأ من صنف فرعي (subclass) من <code>SystemCallError</code> في حال لم يكن المجلد فارغًا .
| |
|
| |
| === [[Ruby/Dir/unlink|التابع unlink]] ===
| |
| يمحو التابع <code>unlink</code> المجلد المحدد، سيُطلق خطأ من صنف فرعي (subclass) من <code>SystemCallError</code> في حال لم يكن المجلد فارغًا.
| |
|
| |
| == توابع الكائن العامة (Public Instance Methods) ==
| |
|
| |
| === [[Ruby/Dir/close|التابع close]] ===
| |
| يغلق التابع <code>close</code> مجرى المجلد (directory stream)، استدعاء هذا التابع على على كائن <code>Dir</code> مغلق صار يُتجاهل منذ روبي 2.3.
| |
|
| |
| === [[Ruby/Dir/each|التابع each]] ===
| |
| يستدعي التابع <code>each</code> الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد. حيث يمُمرّر أسماء تلك الملفات كوسائط للكتلة.
| |
|
| |
| === [[Ruby/Dir/fileno|التابع fileno]] ===
| |
| يعيد التابع <code>fileno</code> عددًا صحيحًا يمثل واصف الملف العددي (numeric file descriptor) المُستخدم في الكائن من صنف <code>Dir</code> الذي استُدعي معه.
| |
|
| |
| === [[Ruby/Dir/inspect|التابع inspect]] ===
| |
| يعيد التابع <code>inspect</code> سلسلة نصية تصف الكائن (من صنف <code>Dir</code>) الذي استُدعي معه.
| |
|
| |
| === [[Ruby/Dir/path|التابع path]] ===
| |
| يعيد التابع <code>path</code> المسار المُمرّر إلى الباني <code>[[Ruby/Dir/new|new]]</code> على شكل سلسلة نصية.
| |
|
| |
| === [[Ruby/Dir/rmdir|التابع pos]] ===
| |
| يعيد التابع <code>pos</code> الموضع الحالي في الكائن من صنف <code>Dir</code> الذي استٌدعي معه. أنظر أيضًا التابع <code>[[uby/Dir/seek|seek]]</code>.
| |
|
| |
| === [[Ruby/Dir/seek|التابع seek]] ===
| |
| يذهب التابع <code>seek</code> إلى موضع محدد في الكائن من صنف <code>Dir</code> الذي استٌدعي معه.
| |
|
| |
| === [[Ruby/Dir/pos-3D|التعبير <code>pos =</code>]] ===
| |
| التعبير <code>pos =</code> هو مرادف للتابع <code>[[uby/Dir/seek|seek]]</code>. بيد أنّه يعيد معامل الموضع (position parameter).
| |
|
| |
| === [[Ruby/Dir/read|التابع read]] ===
| |
| يقرأ التابع <code>read</code> المدخل الموالي في الكائن المجلدي (''dir'' object) الذي استُدعي معه ثم يعيده على شكل سلسلة نصية. وفي نهاية المجرى يعيد القيمة<code>nil</code> .
| |
|
| |
| === [[Ruby/Dir/rewind|التابع rewind]] ===
| |
| يعيد التابع <code>rewind</code> الموضع الراهن عند المدخل الأول.
| |
|
| |
| === [[Ruby/Dir/tell|التابع tell]] ===
| |
| يعيد التابع <code>tell</code> الموضع الحالي في الكائن من صنف <code>Dir</code> الذي استٌدعي معه. أنظر أيضًا التابع <code>[[uby/Dir/seek|seek]]</code>.
| |
|
| |
| === [[Ruby/Dir/to path|التابع to_path]] ===
| |
| يعيد التابع <code>to_path</code> المسار المُمرّر (في الوسيط <code>path</code>) إلى الباني <code>[[Ruby/Dir/new|new]]</code> على شكل سلسلة نصية.
| |
|
| |
|
| ==مصادر<span> </span>== | | ==مصادر<span> </span>== |
| *[http://ruby-doc.org/core-2.5.1/Dir.html قسم الصنف ENV في توثيق روبي الرسمي.] | | *[http://ruby-doc.org/core-2.5.1/ENV.html#method-c-inspect قسم الصنف ENV في توثيق روبي الرسمي.] |