.Command, .tool और .sh फ़ाइल एक्सटेंशन के बीच अंतर क्या है?


22

मैंने कमांड लाइन स्क्रिप्ट निष्पादित करने के बारे में कुछ सवाल देखे? मैंने देखा कि .command और .tool एक्सटेंशन का उल्लेख किया गया था। मैंने हमेशा .sh का उपयोग किया है। इन विभिन्न लिपियों में क्या अंतर है? क्या कुछ एक्सटेंशन अलग-अलग कमांड के लिए अनुमति देते हैं?

जवाबों:


15
  • .command - (टर्मिनल शेल स्क्रिप्ट) विशेष रूप से टर्मिनल के साथ शेल स्क्रिप्ट को जोड़ता है। कभी-कभी "टर्मिनल फ़ाइल" के रूप में संदर्भित किया जाता है।
  • .tool - (टर्मिनल शेल स्क्रिप्ट) ".command" फ़ाइल एक्सटेंशन के समान है।
  • .sh - (शेल स्क्रिप्ट) एक मूल शेल स्क्रिप्ट है जो Xcode 4.1 से संबद्ध है।

प्रोग्रामेटिक रूप से, मुझे यकीन है कि पहले दो (.command बनाम .tool) के बीच का अंतर सूक्ष्म है, जबकि तीसरा अनिवार्य रूप से एक सरल, डिफ़ॉल्ट शेल स्क्रिप्ट है। और वास्तव में Xcode 4.1 के साथ संबद्ध है।

यहाँ छवि विवरण दर्ज करें


5
"... मुझे यकीन है कि पहले दो (.comand बनाम .tool) के बीच का अंतर सूक्ष्म है ..." वास्तव में, अंतर कोई भी नहीं हैं :-) टर्मिनल उन्हें पहचानता है। दो फ़ाइल नाम एक्सटेंशन टर्मिनल के Info.plist में सटीक एक ही फ़ाइल प्रकार के लिए मैप करते हैं और टर्मिनल यह पता लगाने का प्रयास नहीं करता है कि किस एक्सटेंशन की आपूर्ति की गई थी। इसके अलावा, इस तथ्य के अलावा कि अलग-अलग एक्सटेंशन होने का मतलब है कि उनके पास अलग-अलग डिफ़ॉल्ट एप्लिकेशन हो सकते हैं, इन तीनों प्रकारों की सामग्री समान है। वे सभी केवल शेल स्क्रिप्ट हैं।
क्रिस पेज

2

मेरा मानना ​​है कि .sh फाइलें डिफ़ॉल्ट रूप से Xcode की "स्वामित्व वाली" होती हैं, इसलिए यदि आप उनमें से किसी एक पर डबल-क्लिक करते हैं, तो यह निष्पादन के बजाय Xcode में खुलेगा।

.Com और .tool फाइलें डिफ़ॉल्ट रूप से टर्मिनल के स्वामित्व में होती हैं, इसलिए यदि आप उनमें से किसी एक पर डबल-क्लिक करते हैं, तो यह टर्मिनल में खुलेगा और निष्पादित करेगा।

मुझे उनके बीच किसी अन्य अंतर के बारे में पता नहीं है।

मैंने भी शेल स्क्रिप्ट्स के लिए .sh का उपयोग किया है, लेकिन मैंने हाल ही में रोक दिया है क्योंकि मैंने शश के बजाय ज़श में अपनी शेल स्क्रिप्ट लिखना शुरू कर दिया है, और यह याद रखने की कोशिश करने के लिए भ्रामक था कि क्या एक निश्चित कमांड को .sh में समाप्त हो गया है। .Ssh, तो मैं अंत में सिर्फ उन सभी को ~ / बिन / में डाल दिया और सुनिश्चित किया कि वे निष्पादन योग्य थे, और उन पर फ़ाइल एक्सटेंशन का उपयोग न करें।


वास्तव में वे Xcode में नहीं खुलते। और मेरे पास मेरी मशीन पर स्थापित Xcode है।
daviesgeek

1
.sh फ़ाइलें Xcode में खुल सकती हैं (नियंत्रण क्लिक करें »" Open with "एक विकल्प के रूप में Xcode दिखाएगा), लेकिन वे किस ऐप में खोलें, यह निर्भर करेगा कि कौन सा एप्लिकेशन पहले इंस्टॉल किया गया है और एक्सटेंशन का" दावा "करता है। यदि Xcode से पहले कोई अन्य ऐप इंस्टॉल किया गया है और .sh का दावा करता है, तो यह Xcode के साथ खुलने पर नहीं दिखाई देगा।
टीजे लुओमा

1
आप सही हैं: इस तथ्य के अलावा कि विभिन्न फ़ाइल नाम एक्सटेंशन उन्हें अलग-अलग डिफ़ॉल्ट अनुप्रयोग के लिए सक्षम करते हैं, इन फ़ाइलों की सामग्री और हैंडलिंग समान है। वे सभी सिर्फ शेल स्क्रिप्ट फाइलें हैं।
क्रिस पेज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.