Node.js इन दिनों बहुत लोकप्रिय है और मैं इस पर कुछ स्क्रिप्ट लिख रहा हूं। दुर्भाग्य से, संगतता एक समस्या है। आधिकारिक तौर पर, Node.js दुभाषिया को बुलाया जाना चाहिए node, लेकिन डेबियन और उबंटू एक निष्पादन योग्य जहाज को कहते nodejsहैं।
मैं पोर्टेबल स्क्रिप्ट चाहता हूं जो Node.js जितनी संभव हो उतनी स्थितियों में काम कर सके। मान लिया गया कि फ़ाइल नाम है foo.js, मैं वास्तव में स्क्रिप्ट को दो तरीकों से चलाना चाहता हूं:
./foo.jsस्क्रिप्ट चलाता हैnodeया तो याnodejsमें है$PATH।node foo.jsस्क्रिप्ट भी चलाता है (दुभाषिया कहा जाता हैnode)
नोट: xavierm02 और स्वयं के उत्तर बहुविकल्पी लिपि के दो रूप हैं। मैं अभी भी एक शुद्ध शेबंग समाधान में दिलचस्पी रखता हूं, अगर ऐसा मौजूद है।
alphacentauriइस तरह का समर्थन करना चाहता हूं । यदि कोई निष्पादन योग्य कहा जाता है nodejs, तो आप 99% सुनिश्चित हो सकते हैं कि यह Node.js. क्यों दोनों का समर्थन नहीं nodejsऔर node?
nodeआपकी स्क्रिप्ट के लिए या तो मानक नाम का उपयोग करने का सुझाव दूंगा, या एक प्रकार की स्क्रिप्ट बनाऊंगा जो कि शबंग को संशोधित करता है।