التابع system
الخاص بالصنف Kernel
في روبي
ينفذ التابع system
التعليمة المعطاة command…
في صدفة فرعية (subshell). تأخذ التعليمة command…
أحد الأشكال التالية.
commandline : تعليمة نصية تُمرر إلى الصدفة القياسية
cmdname, arg1, ... : تعليمة وواحد أو أكثر من الوسائط - هذا الشكل لا يستخدم الصدفة
[cmdname, argv0], arg1, ... : ووسيط واحد أو أكثر argv[0] تعليمة و
يعيد التابع system
الفيمة true
إذا كانت حالة التعليمة command
تساوي الصفر، وإلا فسيعيد false
. ويعيد nil
إن فشل تنفيذ التعليمة. حالة الخطأ (error status) متاحة في $?
. وتٌعالج الوسائط كما هو الحال في التابع spawn
.
تعد وسائط القاموس env
و options
مثل exec
و spawn
. انظر صفحة spawn
لمزيد من التفاصيل.
انظر كذلك exec
لمزيد من المعلومات حول الصدفة (shell) القياسية.
البنية العامة
system([env,] command... [,options]) → true, false or nil
المعاملات
env
بيئة التنفيذ.
command...
التعليمة المراد تنفيذها.
options
خيارات.
القيمة المُعادة
يعيد التابع system
الفيمة true
إذا كانت حالة التعليمة command
تساوي الصفر، وإلا فسيعيد false
. ويعيد nil
إن فشل تنفيذ التعليمة.
أمثلة
مثال على استخدام التابع system
:
system("echo *")
system("echo", "*")
الناتج:
config.h main.rb
*
انظر أيضا
- التابع
syscall
: يستدعي التابع syscall دالة نظام التشغيل المحددة بواسطة num، ويعيد نتيجة الدالة، أو يطلقSystemCallError
في حال الفشل. - التابع
spawn
: ينفذ التابعspawn
تعليمة محددة، ثم يعيد معرفها (pid).