मेरे पास $ HOME / बिन में एक फ़ाइल है (इससे पहले कि आप पूछें, हाँ, यह मेरे पथ में है) जिसे test
मैंने पुष्टि की है कि जब मैं इसे फ़ाइल के लिए पूर्ण पथ के साथ चलाता हूं तो इसे ठीक से निष्पादित किया जा सकता है। हालाँकि, मुझे बहुत अजीब मुद्दा मिलता है जब मैं इसे इस तरह से नहीं चलाता। जब मैं test
टर्मिनल में बस चलाता हूं , तो यह कुछ भी नहीं करता है और तुरंत लौटता है। मुझे पता है कि यह कई कारणों से फ़ाइल खोजने का मुद्दा नहीं है:
कोई त्रुटि संदेश नहीं है। आम तौर पर यदि फ़ाइल नहीं मिल सकती है या निष्पादित नहीं की जा सकती है तो एक संदेश ऐसा कहते हुए प्रिंट किया जाएगा।
रनिंग
which test
अभी भी सही फ़ाइल पथ देता है।शायद सबसे अजीब - स्क्रिप्ट ठीक काम करता है जब के माध्यम से चलाते हैं
strace
। मैंनेstrace
यह देखने का उपयोग करने की कोशिश की कि क्या मैं समझ सकता हूं कि क्या चल रहा था, लेकिन जब मैंने इसे चलायाstrace
, तो यह 0 मुद्दों के साथ अपेक्षित था।
type
, नहींwhich
। देखें कि "क्यों" का उपयोग न करें? तब क्या उपयोग करें?