التابع 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).

مصادر