الفرق بين المراجعتين لصفحة: «Ruby/Kernel/test»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>test</code> الخاص بالصنف <code>Kernel</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف...' |
لا ملخص تعديل |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Kernel]] | [[تصنيف: Ruby Kernel]] | ||
يستخدم التابع test الحرف <code>cmd</code> لإجراء عدة اختبارات على <code>file1</code> (الجدول الأول أدناه) أو على <code>file1</code> و <code>file2</code> (الجدول الثاني). | يستخدم التابع <code>test</code> الحرف المٌعطى <code>cmd</code> لإجراء عدة اختبارات على <code>file1</code> (الجدول الأول أدناه) أو على <code>file1</code> و <code>file2</code> (الجدول الثاني). | ||
اختبارات <code>File</code> على ملف واحد: | اختبارات <code>File</code> على ملف واحد: | ||
{| class="wikitable" | |||
"A" | !Cmd | ||
"b" | !يعيد | ||
"c" | !شرح | ||
"C" | |- | ||
"d" | |<code>"A"</code> | ||
"e" | |Time | ||
"f" | |توقيت آخر دخول إلى <code>file1</code> | ||
"g" | |- | ||
|<code>"b"</code> | |||
"G" | |قيمة منطقية | ||
|يعيد <code>True</code> إن كان <code>file1</code> من النوع block device | |||
"k" | |- | ||
"l" | |<code>"c"</code> | ||
"M" | |قيمة منطقية | ||
"o" | |يعيد <code>True</code> إن كان <code>file1</code> من النوع character device | ||
|- | |||
"O" | |<code>"C"</code> | ||
|Time | |||
"p" | |توقيت آخر تغيير في <code>file1</code> | ||
"r" | |- | ||
|<code>"d"</code> | |||
"R" | |قيمة منطقية | ||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان مجلدًا | |||
"s" | |- | ||
|<code>"e"</code> | |||
"S" | |قيمة منطقية | ||
"u" | |يعيد <code>True</code> إن كان <code>file1</code> موجودًا | ||
"w" | |- | ||
|<code>"f"</code> | |||
"W" | |قيمة منطقية | ||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان ملفا عاديا | |||
"x" | |- | ||
|<code>"g"</code> | |||
"X" | |قيمة منطقية | ||
|يعيد <code>True</code>إن كانت البتة <code>\CF{setgid}</code>الخاصة بـ<code>file1</code> مُعيّنة (ليست معينة في NT)، | |||
"z" | |- | ||
|<code>"G"</code> | |||
|قيمة منطقية | |||
"=" | |يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكانت مجموعته مساوية لمجموعة المُُستدعي. | ||
|- | |||
"<" | |<code>"k"</code> | ||
|قيمة منطقية | |||
">" | |يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكانت البتة اللزجة (sticky bit) مُعيّنة. | ||
|- | |||
|<code>"l"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان رابطا رمزيا (symbolic link). | |||
|- | |||
|<code>"M"</code> | |||
|Time | |||
|توقيت آخر تعديل على <code>file1</code> | |||
|- | |||
|<code>"o"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان مملوكا المعرف العملي للمُستدعي (caller's effective uid). | |||
|- | |||
|<code>"O"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان مملوكا المعرف الحقيقي للمُستدعي (caller's real uid). | |||
|- | |||
|<code>"p"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان من النوع fifo | |||
|- | |||
|<code>"r"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> قابلا للقراءة من المعرف العملي للمُستدعي (effective uid/gid of the caller). | |||
|- | |||
|<code>"R"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> قابلا للقراءة من المعرف الحقيقي للمُستدعي (real uid/gid of the caller). | |||
|- | |||
|<code>"s"</code> | |||
|int/nil | |||
|إن كان حجم <code>file1</code> غير معدوم، فسيعيد الحجم، أو سيعيد <code>nil</code>. | |||
|- | |||
|<code>"S"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وكان من النوع socket | |||
|- | |||
|<code>"u"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code>إن كانت البتة <code>setuid</code> الخاصة بـ<code>file1</code> مُعيّنة | |||
|- | |||
|<code>"w"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> قابلا للكتابة من المعرف العملي للمُستدعي (effective uid/gid of the caller). | |||
|- | |||
|<code>"W"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> قابلا للكتابة من المعرف الحقيقي للمُستدعي (real uid/gid of the caller). | |||
|- | |||
|<code>"x"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> قابلا للتنفيذ من المعرف العملي للمُستدعي (effective uid/gid of the caller). | |||
|- | |||
|<code>"X"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> قابلا للتنفيذ من المعرف الحقيقي للمُستدعي (real uid/gid of the caller). | |||
|- | |||
|<code>"z"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> موجودًا وطوله غير معدوم | |||
|} | |||
الاختبارات التي تشمل ملفين: | |||
{| class="wikitable" | |||
|<code>"-"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان <code>file1</code> و <code>file2</code> متطابقين. | |||
|- | |||
|<code>"="</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان توقيت تعديل <code>file1</code> و <code>file2</code> متساويين. | |||
|- | |||
|<code>"<"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان توقيت تعديل <code>file1</code> قبل توقيت تعديل <code>file2</code>. | |||
|- | |||
|<code>">"</code> | |||
|قيمة منطقية | |||
|يعيد <code>True</code> إن كان توقيت تعديل <code>file1</code> بعد توقيت تعديل<code>file2</code>. | |||
|} | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">test(cmd, file1 [, file2] ) → obj</syntaxhighlight> | <syntaxhighlight lang="ruby">test(cmd, file1 [, file2] ) → obj</syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
===<code>cmd</code>=== | ===<code>cmd</code>=== | ||
يحدد الخيارات. | |||
===<code>file1</code>=== | ===<code>file1</code>=== | ||
الملف الأول. | |||
===<code>file2</code>=== | ===<code>file2</code>=== | ||
الملف الثاني. | |||
==القيمة المُعادة== | ==القيمة المُعادة== | ||
يعيد كائنا بحسب قيمة الوسيط <code>cmd</code> (انظر الجدولين أعلاه). | |||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/Kernel/system|system]]</code>: ينفذ التابع system الوسيط | * التابع <code>[[Ruby/Kernel/system|system]]</code>: ينفذ التابع system الوسيط المعطى في صدفة فرعية (subshell). | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/Kernel.html#method-i-test قسم التابع test في الصنف Kernel في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/Kernel.html#method-i-test قسم التابع test في الصنف Kernel في توثيق روبي الرسمي.] |
مراجعة 23:31، 23 أكتوبر 2018
يستخدم التابع test
الحرف المٌعطى cmd
لإجراء عدة اختبارات على file1
(الجدول الأول أدناه) أو على file1
و file2
(الجدول الثاني).
اختبارات File
على ملف واحد:
Cmd | يعيد | شرح |
---|---|---|
"A"
|
Time | توقيت آخر دخول إلى file1
|
"b"
|
قيمة منطقية | يعيد True إن كان file1 من النوع block device
|
"c"
|
قيمة منطقية | يعيد True إن كان file1 من النوع character device
|
"C"
|
Time | توقيت آخر تغيير في file1
|
"d"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان مجلدًا
|
"e"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا
|
"f"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان ملفا عاديا
|
"g"
|
قيمة منطقية | يعيد True إن كانت البتة \CF{setgid} الخاصة بـfile1 مُعيّنة (ليست معينة في NT)،
|
"G"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكانت مجموعته مساوية لمجموعة المُُستدعي.
|
"k"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكانت البتة اللزجة (sticky bit) مُعيّنة.
|
"l"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان رابطا رمزيا (symbolic link).
|
"M"
|
Time | توقيت آخر تعديل على file1
|
"o"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان مملوكا المعرف العملي للمُستدعي (caller's effective uid).
|
"O"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان مملوكا المعرف الحقيقي للمُستدعي (caller's real uid).
|
"p"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان من النوع fifo
|
"r"
|
قيمة منطقية | يعيد True إن كان file1 قابلا للقراءة من المعرف العملي للمُستدعي (effective uid/gid of the caller).
|
"R"
|
قيمة منطقية | يعيد True إن كان file1 قابلا للقراءة من المعرف الحقيقي للمُستدعي (real uid/gid of the caller).
|
"s"
|
int/nil | إن كان حجم file1 غير معدوم، فسيعيد الحجم، أو سيعيد nil .
|
"S"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وكان من النوع socket
|
"u"
|
قيمة منطقية | يعيد True إن كانت البتة setuid الخاصة بـfile1 مُعيّنة
|
"w"
|
قيمة منطقية | يعيد True إن كان file1 قابلا للكتابة من المعرف العملي للمُستدعي (effective uid/gid of the caller).
|
"W"
|
قيمة منطقية | يعيد True إن كان file1 قابلا للكتابة من المعرف الحقيقي للمُستدعي (real uid/gid of the caller).
|
"x"
|
قيمة منطقية | يعيد True إن كان file1 قابلا للتنفيذ من المعرف العملي للمُستدعي (effective uid/gid of the caller).
|
"X"
|
قيمة منطقية | يعيد True إن كان file1 قابلا للتنفيذ من المعرف الحقيقي للمُستدعي (real uid/gid of the caller).
|
"z"
|
قيمة منطقية | يعيد True إن كان file1 موجودًا وطوله غير معدوم
|
الاختبارات التي تشمل ملفين:
"-"
|
قيمة منطقية | يعيد True إن كان file1 و file2 متطابقين.
|
"="
|
قيمة منطقية | يعيد True إن كان توقيت تعديل file1 و file2 متساويين.
|
"<"
|
قيمة منطقية | يعيد True إن كان توقيت تعديل file1 قبل توقيت تعديل file2 .
|
">"
|
قيمة منطقية | يعيد True إن كان توقيت تعديل file1 بعد توقيت تعديلfile2 .
|
البنية العامة
test(cmd, file1 [, file2] ) → obj
المعاملات
cmd
يحدد الخيارات.
file1
الملف الأول.
file2
الملف الثاني.
القيمة المُعادة
يعيد كائنا بحسب قيمة الوسيط cmd
(انظر الجدولين أعلاه).
انظر أيضا
- التابع
system
: ينفذ التابع system الوسيط المعطى في صدفة فرعية (subshell).