"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تنفيذ أوامر Shell باستخدام وظيفة \'exec\' الخاصة بجافا سكريبت؟

كيفية تنفيذ أوامر Shell باستخدام وظيفة \'exec\' الخاصة بجافا سكريبت؟

تم النشر بتاريخ 2024-11-07
تصفح:449

How to Execute Shell Commands Using JavaScript\'s \'exec\' Function?

تنفيذ أوامر Shell بسلاسة في JavaScript

يمتد تعدد استخدامات JavaScript إلى ما هو أبعد من تطوير الويب ليشمل إمكانات قوية لتفاعل النظام. أحد الجوانب الحاسمة في ذلك هو القدرة على تنفيذ أوامر الصدفة واسترداد مخرجاتها.

كيفية تنفيذ أوامر الصدفة في جافا سكريبت

لتنفيذ أوامر الصدفة في جافا سكريبت، نحن الاستفادة من وحدة Child_process التي توفرها Node.js. توفر هذه الوحدة مجموعة من الأساليب للعمل مع العمليات الخارجية، بما في ذلك وظيفة exec.

مثال على التعليمات البرمجية

يوضح التعليمة البرمجية التالية كيفية تنفيذ أمر cat باستخدام الأمر cat توجيه الإخراج والأمر wc باستخدام exec:

var exec = require('child_process').exec; exec('cat *.js bad_file | wc -l', وظيفة (خطأ، ستدوت، ستدير) { console.log('stdout: ' stdout); console.log('stderr: ' stderr); إذا (خطأ !== فارغ) { console.log('خطأ تنفيذي:' خطأ); } });
var exec = require('child_process').exec;

exec('cat *.js bad_file | wc -l',
    function (error, stdout, stderr) {
        console.log('stdout: '   stdout);
        console.log('stderr: '   stderr);
        if (error !== null) {
             console.log('exec error: '   error);
        }
    });
تحليل الكود

تأخذ الدالة exec سلسلة تمثل أمر الصدفة ليتم تنفيذها.
  • تتلقى وظيفة رد الاتصال ثلاث وسائط:
  • الخطأ: يحتوي على أي أخطاء حدثت أثناء التنفيذ.
    • stdout: يلتقط مخرجات دفق الإخراج القياسي.
    • stderr : يلتقط مخرجات تدفق الأخطاء القياسية.
    في المثال أعلاه، نقوم بتسلسل نتائج الأمر cat مع أمر wc، الذي يحسب عدد الأسطر في الإخراج للأمر cat.
ملاحظة:

يفترض هذا الرمز أنك تستخدم Node.js كوقت تشغيل JavaScript. قد تحتاج إلى ضبط بناء الجملة أو عبارات الاستيراد إذا كنت تستخدم إطار عمل أو بيئة JavaScript مختلفة.

بيان الافراج أعيد طبع هذه المقالة على: 1729311316 في حالة وجود أي انتهاك، يرجى الاتصال بـ [email protected] لحذفها
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3