المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

المشكلة

الحل

معلومات ذات صلة

المقدمة

يقدم هذا المستند إرشادات حول كيفية حل المشكلة: لا يوجد مثل هذا الجهاز أو رسالة خطأ العنوان (أو ما شابه) عند تشغيل برامج Unix النصية على عميل.

المتطلبات الأساسية

المتطلبات

توصي Cisco بأن يكون لديك وكيل Tidal 3.0 أو تثبيت أعلى.

المكونات المستخدمة

تستند المعلومات الواردة في هذا المستند إلى الإصدار 3.0 من وكيل Tidal Windows أو إصدار أعلى.

تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك مباشرة، فتأكد من فهمك للتأثير المحتمل لأي أمر.

المشكلة

عندما تقوم بتشغيل برنامج نصي على عميل Unix، الحالة: لا يوجد مثل هذا الجهاز أو العنوان، الحالة: إدخال قياسي: إدخال غير مناسب للجهاز، أو توجد أخطاء مماثلة. بشكل نموذجي، يتم البرنامج النصي بنجاح. ومع ذلك، يتم إرجاع هذا الخطأ في إخراج المهمة.

الحل

إذا كان البرنامج النصي يستخدم الأمر stty، فإن تلك الأخطاء يتم إستلامها. أسهل حل هو أن تحتوي هذه الجمل في جملة IF التي تقوم بتنفيذها فقط إذا كان النص التنفيذي يتم تشغيله تفاعليا (أي من سطر الأوامر).

على سبيل المثال:

if [ `tty | grep -ci not` -eq 0 ]

then

stty erase \^\h kill \^u intr \^c       # workstations

stty echoe echok ixon ixoff -ixany

stty erase \^\?

stty erase \^h kill \^u intr \^c

fi

ببساطة وضعت، أنت يستطيع لا يركض حالة أمر في بيئة غير تفاعلية (مثل المشكلة عندما يركض نص تنفيذي على هيئة وظائف cron).

ملاحظة: تم تطوير المثال المذكور أعلاه واختباره على نظام Solaris 8، وقد يتطلب التعديل وفقا للطبقة التي تقوم بتشغيلها. يتم توفير هذا الرمز كمثال فقط.

معلومات ذات صلة

- الدعم التقني والمستندات - Cisco Systems