एक ही समय में (समानांतर में) सभी लिपियों को चलाने के लिए:
script_1.sh &
script_2.sh &
script_3.sh &
script_4.sh &
script_5.sh &
एक के बाद एक चलाने के लिए (क्रमिक रूप से) उपयोग करें:
script_1.sh &&
script_2.sh &&
script_3.sh &&
script_4.sh &&
script_5.sh
टिप्पणियों के लिए एन्हांसमेंट
यदि आपके पास 200 स्क्रिप्ट्स हैं जिन्हें आप उसी समय चलाना चाहते हैं (जो मशीन BTW को तोड़ सकती है) इस स्क्रिप्ट का उपयोग करें:
#!/bin/bash
for Script in my_folder/*.sh ; do
echo bash "$Script" &
done
कमांड के साथ निष्पादन योग्य स्क्रिप्ट स्क्रिप्ट सेट करें:
chmod a+x /path/to/script.sh
पहली बार जब आप स्क्रिप्ट चलाते हैं तो यह केवल 200 स्क्रिप्ट के नामों को प्रतिध्वनित करेगा जो इसे निष्पादित करेगा। जब आप खुश होते हैं तो सही नामों का चयन किया जाता है स्क्रिप्ट को संपादित करें और इस पंक्ति को बदलें:
echo bash "$Script" &
सेवा:
bash "$Script" &
तीन तरीके हैं जिनसे आप एक बेस् स्क्रिप्ट को दूसरी जगह से कॉल कर सकते हैं जैसे कि यहाँ उत्तर दिया गया है
अन्य स्क्रिप्ट को निष्पादन योग्य बनाएं, #!/bin/bash
शीर्ष पर लाइन जोड़ें , और वह पथ जहां फ़ाइल $PATH
पर्यावरण चर में है। तब आप इसे सामान्य आदेश कह सकते हैं;
या इसे सोर्स कमांड के साथ कहें (उपनाम है।) इस तरह source /path/to/script
:;
या इसे निष्पादित करने के लिए बैश कमांड का उपयोग करें /bin/bash /path/to/script
:;
ओपी के मामले में 200 में से एक या अधिक स्क्रिप्ट #!/bin/bash
में फ़ाइल में शेबंग पहली पंक्ति नहीं थी । इस तरह के विकल्प के रूप में 3. इस्तेमाल किया जाना था।
एक ही समय में चल रहे 200 लिपियाँ
इस बारे में एक टिप्पणी की गई है कि क्या वे "एक ही समय में चल रहे हैं"। एक सामान्य 8 सीपीयू प्रणाली पर 25 स्क्रिप्ट एक ही समय में एक सीपीयू साझा करेंगे लेकिन एक समय में टुकड़ा (मिलीसेकंड में मापा जाता है) तक केवल एक ही स्क्रिप्ट निष्पादित होगी। फिर अगली नौकरी मिलिसकॉन्ड के अपने उचित हिस्से को प्राप्त करेगी, फिर अगली नौकरी, आदि, आदि।
ढीले शब्दों में हम कह सकते हैं कि 200 नौकरियां "समवर्ती" चल रही हैं, लेकिन 8 सीपीयू के पार "एक साथ" नहीं हैं, जो प्रति सीपीयू 25% के बराबर हैं:
लिनक्स कर्नेल अनुसूचक से नीचे की छवि और टिप्पणियाँ