
في الأنظمة الشبيهة بـ UNIX ، من المهم إدارة المهام بكفاءة ، عندما تحتاج إلى التعامل مع عمليات متعددة في نفس الوقت.يتيح لك مفهوم "التحكم في الوظائف" تشغيل العمليات في الخلفية وتقديمها إلى المقدمة عند الضرورة.ال FG الأمر هو أداة مفيدة لهذا الغرض.إنها تسمح بإحضار عملية خلفية ، وهي عملية كانت تعمل بصمت في النظام إلى المقدمة ، حيث يمكن التفاعل معها مباشرة.هذا مفيد عندما تحتاج إلى استئناف العمل في عملية توقف مؤقتًا أو إرسالها إلى الخلفية.يؤدي استخدام أمر FG إلى تحسين الإنتاجية من خلال تسهيل إدارة مهام النظام دون مقاطعة مهام سير العمل.على سبيل المثال ، يمكنك إرسال مهمة إلى الخلفية باستخدام CTRL + Z ، مما يحرر المحطة للمهام الأخرى ، واستخدام FG لاحقًا لإعادة هذه المهمة إلى المقدمة.تم تصميم هذا الأمر في معظم الأصداف القائمة على UNIX ، بما في ذلك Korn Shell (KSH) والقذائف المتوافقة مع POSIX ، مما يجعلها متاحة على نطاق واسع عبر أنظمة مختلفة.يعد التحكم في الوظائف ، بما في ذلك استخدام FG ، مهمًا في المواقف التي يتعدد فيها المهام داخل المحطة.تخيل تشغيل نص طويل يستغرق وقتًا للإنهاء.بدلاً من الانتظار لإكماله ، يمكنك إرساله إلى الخلفية ، ومواصلة العمل على شيء آخر ، ثم أعيده لاحقًا مع FG.يساعد هذا في التعامل مع المهام المتعددة بطريقة منظمة وفعالة دون فقدان العمليات المهمة.
ال FG الأمر سهل الاستخدام ، ولكن معرفة بناء الجملة وكيفية تحديد الوظائف بشكل صحيح أمر مهم حتى يعمل بفعالية.بناء الجملة الأساسي هو:
FG [JobID]
ال [JobID] هي وسيلة لإخبار النظام عن مهمة الخلفية التي تريد إحضارها إلى المقدمة.هناك عدة طرق لتحديد معرف الوظيفة هذا.على سبيل المثال ، يمكنك استخدام ٪رقم للإشارة إلى وظيفة من خلال معرفها العددي ، مثل ٪ 1 للوظيفة الأولى.بدلاً من ذلك ، يمكنك استخدام جزء من اسم الوظيفة من خلال تحديد ٪خيط، أو حتى البحث عن الوظائف التي تحتوي على فرعية محددة باستخدام ٪؟خيط.إذا كنت ترغب في إحضار أحدث وظيفة متوقفة إلى المقدمة ، يمكنك ببساطة استخدام FG دون تحديد معرف الوظيفة.دعنا نأخذ مثالاً.تخيل أنك تدير عملية خلفية تسمى النوم 100 (مما يجعل النظام ينتظر 100 ثانية).يمكنك استخدام وظائف أمر لإدراج مهام الخلفية النشطة ، وقد تظهر شيئًا كهذا:
[1] + تشغيل النوم 100 &
لتقديم هذه العملية إلى المقدمة ، يمكنك الكتابة FG ٪ 1.إذا كان لديك وظائف متعددة ، فمن الضروري استخدام معرف الوظيفة الصحيح لتجنب الوصول عن طريق الخطأ العملية الخاطئة إلى المقدمة.استخدام FG يضمن بشكل صحيح أنه يمكنك التبديل بسلاسة بين المهام دون ارتباك أو انقطاع.من المهم معرفة كيفية جلب عملية إلى المقدمة عند التعامل مع المهام التفاعلية.على سبيل المثال ، إذا كانت العملية تتطلب إدخالًا ، فأنت في حاجة إليها في المقدمة للرد.دون استخدام FG، سيتعين عليك إيقاف المهام الأخرى أو فتح جلسات طرفية جديدة للتفاعل مع عمليات الخلفية.وبالتالي ، فإن إتقان التحكم في الوظائف يبقي سير العمل الخاص بك على نحو سلس وفعال.
عند استخدام أمر FG ، من المهم أن نفهم كيفية استجابة النظام من خلال رموز الخروج.تساعدك هذه الرموز على معرفة ما إذا كان قد تم تنفيذ الأمر بنجاح أو إذا كانت هناك مشكلة.يؤدي التنفيذ الناجح لأمر FG إلى إرجاع رمز خروج من 0 ، مما يعني أن مهمة الخلفية تم إحضارها إلى المقدمة دون أي مشاكل.ومع ذلك ، إذا كان هناك خطأ ، على سبيل المثال ، إذا حاولت إحضار وظيفة إلى المقدمة عند تعطيل التحكم في الوظائف ، فسيقوم النظام بإرجاع رمز الخروج أكبر من 0 ، مما يشير إلى أن هناك خطأ ما.
في بعض الحالات ، قد يتم تعطيل التحكم في الوظائف في بيئة الصدفة.عندما يحدث هذا ، فإن محاولة استخدام FG ستؤدي إلى خطأ.بدون التحكم في الوظائف ، لا يمكنك نقل مهام الخلفية إلى المقدمة ، مما يحد من تعدد المهام وكفاءة النظام.لذلك ، مطلوب لضمان تمكين التحكم في الوظائف عند العمل في أنظمة تشبه UNIX ، وخاصة في البيئات التي تكون فيها إدارة عمليات متعددة أمرًا شائعًا.لمعرفة كيف يعمل هذا في الممارسة العملية ، فكر في السيناريو التالي.لديك مهمة خلفية طويلة الأمد قد توقفت مؤقتًا باستخدام CTRL + Z. تحاول استخدام أمر FG ، ولكنه يعيد خطأً بسبب تعطيل التحكم في الوظائف.يسلط هذا الموقف الضوء على أهمية التحقق من تكوينات النظام والتأكد من أن التحكم في الوظائف نشط قبل محاولة استخدام أوامر مثل FG.
دعنا نذهب من خلال مثال بسيط لنرى كيف FG يعمل بشكل حقيقي.تخيل أنك تدير عملية تسمى النوم 100، مما يجعل النظام يتوقف لمدة 100 ثانية.بدلاً من انتظار الانتهاء ، تقرر إرسالها إلى الخلفية عن طريق الكتابة:
النوم 100 و
الآن ، تعمل المهمة في الخلفية ، ويمكنك متابعة استخدام المحطة.للتحقق من مهام الخلفية التي تعمل ، يمكنك استخدام وظائف الأمر ، والذي يعرض قائمة بالوظائف النشطة.ترى شيئًا كهذا:
[1] + تشغيل النوم 100 &
إذا كنت ترغب في إعادة هذه المهمة إلى المقدمة ، فأنت ببساطة تكتب:
FG ٪ 1
بمجرد قيامك بذلك ، ستنتقل المهمة إلى المقدمة ، وستعرض المحطة اسم العملية ، مما يشير إلى أنها المهمة النشطة الآن.يمكن أن يكون وضع العملية مفيدًا إذا كنت بحاجة إلى التفاعل معها أو التحقق من تقدمها في الوقت المناسب.على سبيل المثال ، إذا كانت المهمة تتطلب الإدخال أو التعديلات ، فإن إحضاره إلى المقدمة يتيح لك القيام بذلك مباشرة.هذا يجعل FG أداة قيمة لإدارة المهام بكفاءة دون مقاطعة سير العمل الخاص بك.
قذيفة كورن (KSH) هي واجهة سطر أوامر شهيرة تستخدم في العديد من الأنظمة المستندة إلى UNIX.إنه يوفر دعمًا مدمجًا للتحكم في الوظائف ويتضمن أمر FG كجزء من ميزاته الأساسية.يتيح لك هذا التكامل إدارة الخلفية والمهام المقدمة مباشرة من القشرة ، مما يسهل التعامل مع تعدد المهام دون الاعتماد على الأدوات الخارجية.إحدى الميزات المهمة لقذيفة Korn هي قدرتها على البرمجة النصية.يمكنك كتابة البرامج النصية التي تتم أتمتة المهام المتكررة ، ويمكن استخدام أمر FG في هذه البرامج النصية لإدارة عمليات الخلفية.على سبيل المثال ، قد يبدأ البرنامج النصي عملية في الخلفية ، وأداء مهام أخرى ، ثم إحضار عملية الخلفية إلى المقدمة عند الحاجة إلى الإدخال.هذه المرونة تجعل Korn Shell أداة قوية لمسؤولي النظام والذين يحتاجون إلى إدارة سير العمل المعقدة.بالإضافة إلى النسخة المدمجة من FG في Korn Shell ، هناك أيضًا نسخة مستقلة من الأمر الموجود في /usr/bin/fg.يسمح ذلك باستخدام الأمر عبر بيئات قذيفة مختلفة ، مما يضمن سلوكًا ثابتًا بغض النظر عن القشرة المستخدمة.
الرجاء إرسال استفسار ، وسوف نرد على الفور.
على 09/01/2025
على 09/01/2025
على 18/04/8000 147774
على 18/04/2000 112017
على 18/04/1600 111351
على 18/04/0400 83771
على 01/01/1970 79568
على 01/01/1970 66961
على 01/01/1970 63102
على 01/01/1970 63041
على 01/01/1970 54097
على 01/01/1970 52185