क्या कोई जावास्क्रिप्ट शेल है?


30

हाल ही में मैं JS के साथ काम कर रहा हूं और मैं इस भाषा को लेकर बहुत उत्साहित हूं। मुझे पता है कि सर्वर साइड पर JS चलाने के लिए नोड.जेएस है , लेकिन क्या कोई शेल है जो JS को स्क्रिप्टिंग भाषा के रूप में उपयोग करता है? अगर ऐसी बात मौजूद है, तो यह कितना उपयोगी और स्थिर है?

जवाबों:


17

क्या यह आपके लिए वांछनीय है?

// Replace macros in each .js file
cd('lib');
ls('*.js').forEach(function(file) {
  sed('-i', 'BUILD_VERSION', 'v0.1.2', file);
  sed('-i', /.*REMOVE_THIS_LINE.*\n/, '', file);
  sed('-i', /.*REPLACE_LINE_WITH_MACRO.*\n/, cat('macro.js'), file);
});
cd('..');

यदि हां, तो शैलजेएस दिलचस्प हो सकता है

Node.js API के शीर्ष पर यूनिक्स शेल कमांड का एक पोर्टेबल (विंडोज शामिल) कार्यान्वयन।

मैं अनिश्चित हूँ अगर यह एक पूर्ण विशेषताओं लॉगिन खोल के रूप में इस्तेमाल किया जा सकता है, हालांकि। (शायद कुछ लपेटने के साथ?)

आप तर्क दे सकते हैं कि यह वास्तव में एक खोल नहीं है, लेकिन क्या आप टर्मकिट जानते हैं ? यह Node.js + Webkit से बना है, आप इसे बढ़ाने के लिए JS का उपयोग कर सकते हैं (मुझे लगता है); शेल भाषा अभी भी बैश (-ish) है।


खैर, यह अच्छा लग रहा है! मै उसे करने की एक कोशिश तो करूंगा।
जे-अनीयर

मैं तकनीकी रूप से इसे वास्तव में एक शेल नहीं मानता क्योंकि यह cmd argumentsसिंटैक्स का पालन नहीं करता है । उदाहरण के लिए pshमेरी समझ से पर्ल भाषा में इस तरह के वाक्यविन्यास जोड़ता है, इसलिए यह एक विशिष्ट शेल gnp.github.io/psh की तरह दिखाई देता है, एक काउंटर उदाहरण हो सकता है लेकिन मुझे अभी तक नहीं मिला है।
विलियम

मैं इसे अपने लॉगिन शेल के रूप में कैसे सेट करूंगा? फिर से मुझे ऐसा कुछ चाहिए, लेकिन मुझे यकीन नहीं है कि यह ऐसा है।
विलियम

फिर भी बाश-ईश, हम sed({i:1}, 'BUILD_VERSION', 'v0.1.2', file)इसके बजाय उपयोग कर सकते हैं । प्रतीक्षा के साथ async फ़ंक्शंस का उपयोग करना बेहतर होगा, इसलिए समानांतर तेज़ होगा।
inf3rno

शेलजेएस लिंक टूट गया है।
yO_

8

मोज़िला कांग्रेस एक प्रदान करता है javascriptखोल : देखने Introduction_to_the_JavaScript_shell

एक सिस्टम में एक शेल का उदाहरण :

$ js
js> str = "welcome on *nix side" 
"welcome on *nix side"
js> str.indexOf("nix");          
12
js> 

परीक्षण के उद्देश्य के लिए इसका उपयोग करने के बाद से कोई समस्या नहीं मिली।


यह jsपैकेज के रूप में अब कुछ / कई लिनक्स डिस्ट्रोस पर उपलब्ध है ।
गोल्डीलॉक्स

8

यदि आप उबंटू या किसी अन्य डेबियन आधारित प्रणाली पर हैं, तो आप राइनो (Mozilla.org से) स्थापित कर सकते हैं।

sudo apt-get install rhino

यह विकल्प के माध्यम से js की आपूर्ति करता है:

=== /usr/bin/js is a symlink... following it
lrwxrwxrwx 1 root root 20 Nov 21 08:54 /usr/bin/js -> /etc/alternatives/js
=== /etc/alternatives/js is a symlink... following it
lrwxrwxrwx 1 root root 14 Nov 21 08:54 /etc/alternatives/js -> /usr/bin/rhino
=== /usr/bin/rhino is owned by package: rhino ===

तो राइनो या js को कॉल करने से आपको एक जावास्क्रिप्ट शेल मिलेगा।

संपादित करें (2014-06-30):

राइनो एक फ़ाइल में कुछ जावास्क्रिप्ट कोड का जल्दी से परीक्षण करने के लिए अच्छा है, लेकिन यह एक इंटरेक्टिव शेल नहीं है, इसलिए यह संपादन की GNU रीडलाइन शैली का समर्थन नहीं करता है। इंटरैक्टिव काम के लिए, आप पसंद कर सकते हैंnodejs: उबंटू / डेबियन परsudo apt-get install nodejs। यह एक और अधिक इंटरैक्टिवjsशेल (कमांड का उपयोग करके आह्वानjs)प्रदान करना चाहिएजहां आप लाइनों को संपादित कर सकते हैं और ऊपर / नीचे तीर-कुंजियों के साथ इतिहास को याद कर सकते हैं। विकल्पों की लंबी सूची के लिए, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Shells देखें


0

क्रोम और फ़ायरफ़ॉक्स में, यदि आप F12 दबाते हैं तो यह डेवलपर टूल लाता है। वहाँ पर आपको कंसोल नामक एक टैब मिल सकता है, जहाँ आप जावास्क्रिप्ट स्क्रिप्ट टाइप और टेस्ट कर सकते हैं। इसमें कोड पूर्णता और अन्य विशेषताएं भी हैं।


5
मुझे लगता है कि आप इस सवाल को नहीं समझ पाए हैं। मैंने UNIX शेल के बारे में पूछा है । लेकिन वैसे भी मदद करने के लिए तैयार के लिए धन्यवाद।
जे-अनजाने

1
यह प्रश्न का उत्तर देता है, " क्या कोई शेल है जो JS को स्क्रिप्टिंग भाषा के रूप में उपयोग करता है? "। प्रश्न में कुछ भी नहीं ( bashया zsh) के विकल्प के बारे में बात करता है
रोएमा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.