मैंने के साथ $!
के साथ गलती से एक बैश स्क्रिप्ट शुरू की और 0 बहुत ही अजीब व्यवहार प्राप्त किया। मैं यह पता लगाने की कोशिश कर रहा हूं कि क्या हुआ।
आप इस स्क्रिप्ट का प्रयास करें:
$!/bin/bash
echo Hello world!
आप निम्नलिखित व्यवहार मिल जाएगा:
- एक नया बैश खोल पैदा की:
$ chmod +x hello $ ./hello [nothing happens, get prompt back] $ exit exit Hello world! $
तो यह इस तरह हुआ लग रहा है।
- बाहर निकलने पर, शेष स्क्रिप्ट निष्पादित की गई।
क्या हो रहा है? सब कुछ कैसे हो रहा है? #!
के बिना, स्क्रिप्ट को समझने के लिए खोल को bash
का उपयोग करने के बारे में कैसे पता है?
स्पष्ट रूप से यह "मेरी समस्या का समाधान" प्रश्न के बजाय "मेरी जिज्ञासा को पूरा करें" है। Googling अधिक पैदा नहीं करता है, शायद #!
और $!
प्रश्नों में Google-Bot खुश नहीं करते हैं।