7

मैं विजुअल स्टूडियो कोड से रन बैक के रूप में विंडोज बैश कैसे चला सकता हूं?विंडोज बैश और विजुअल स्टूडियो कोड: मैं रन कार्य के रूप में बैश लॉन्च कैसे कर सकता हूं?

ऐसा करने के लिए tasks.json पर मेरे कुछ प्रयास यहां दिए गए हैं।

{ 
    "version": "0.1.0", 
    "command": "cmd", 
    "isShellCommand": true, 
    "args": [ "RunShellScript.bat" ], 
    "showOutput": "always" 
} 

RunShellScript.bat केवल इस पंक्ति है: bash myShellScript.sh। जो अगर आप शुरू से cmd खोलें, और उस पंक्ति को टाइप करें, तो यह निष्पादित होगा। यदि आप फ़ाइल को डबल क्लिक करते हैं तो यह पूरी तरह से चलता है। हालांकि, जब वीएससीओडी से लॉन्च किया गया, तो यह आउटपुट तब तक लटकता है जब तक कि मैं इसे समाप्त नहीं करता।

प्रयास नंबर 2:

{ 
    "version": "0.1.0", 
    "command": "cmd", 
    "isShellCommand": true, 
    "args": [ "bash myShellScript.sh" ], 
    "showOutput": "always" 
} 

यह भी लटकी हुई है, बस ऊपर की तरह।

प्रयास नंबर 3:

{ 
    "version": "0.1.0", 
    "command": "C:/Windows/System32/bash", 
    "isShellCommand": false, 
    "args": [ "myShellScript.sh" ], 
    "showOutput": "always" 
} 

यह मैं देता है:

Failed to launch external program C:/Windows/System32/bash myShellScript.sh 
spawn C:/Windows/System32/bash ENOENT 

Ive भी कोई लाभ नहीं हुआ इन मामलों में से कुछ में सही और गलत पर "isShellCommand" चर की स्थापना के साथ प्रयोग किया है, लेकिन।

क्या कोई यह जानता है कि यह कैसे करें?

उत्तर

6

मैं भी देख रहा था यह देखने के लिए कि मैं वही काम कैसे कर सकता हूं।

एंडएलआरसी - मैंने आपके दो विकल्पों की कोशिश की है और उनमें से कोई भी चाल नहीं कर रहा है। अंक में जो कुछ भी संदर्भ दृश्य स्टूडियो संहिता में इसे चलाता मान्यता प्राप्त नहीं है कि पार्टी में हो रहा है मैं विभिन्न दृष्टिकोण की कोशिश की है:।

  • "कमांड": "C: /Windows/System32/bash.exe"
  • "कमांड": "पार्टी"
  • "कमांड": "bash.exe"

मैं कोशिश कर रखना और वापस पोस्ट अगर मैंने कुछ काम कर मिल जाएगा।

संपादित करें: समझ गया। इस आदमी को क्रेडिट - https://aigeec.com/using-windows-10-anniversary-bash-with-visual-studio-code/

संक्षेप में, यह क्या उबालता है कि मैं 64 बिट ऑपरेटिंग सिस्टम पर हूं जिसका अर्थ है bash.exe सी: \ विंडोज \ System32 में स्थित है। ब्लॉग पोस्ट के अनुसार bys.exe को bys.exe में कॉपी करने के बाद, विज़ुअल स्टूडियो कोड की डिफ़ॉल्ट बिल्ड एक्शन (Ctrl + Shift + B) चलती है जैसा आप चाहते हैं।

यह एक hacky वैकल्पिक हल का एक सा लगता है - यह शायद MSFT के साथ ऊपर उठाने वहाँ कुछ हम इसके बारे में क्या कर सकते हैं, तो देखने के लिए लायक है।

संपादित: यहाँ मेरी tasks.json के रूप में अनुरोध है:

{ 
    // See https://go.microsoft.com/fwlink/?LinkId=733558 
    // for the documentation about the tasks.json format 
    "version": "0.1.0", 
    "command": "bash", 
    "isShellCommand": true, 
    "args": [ "./gulp.sh" ], 
    "showOutput": "always", 
    "tasks": [{ 
    "taskName": "scripts", 
    "isBuildCommand": true, 
    "problemMatcher": "$gulp-tsc", 
    "isWatching": true 
    }] 

}

gulp.sh केवल एक ही आदेश होता है; 'gulp' :-) लेकिन आप जो कुछ भी चाहते हैं उसे अनिवार्य रूप से रख सकते हैं, मुझे लगता है कि आपके पास

से संबंधित कई अलग-अलग टेपों को पूरा करने के लिए कई .sh स्क्रिप्ट हो सकती हैं, दुर्भाग्य से यह ' टी समझ में नहीं आता है और निर्माण कार्य नहीं चलता है।

+8

'सी: \ विंडोज \ sysnative \ bash.exe' चलाने की कोशिश करने के लिए एक कम हैकी समाधान होगा। –

+0

क्या आप अपनी पोस्ट को tasks.json या launch.json को शामिल करने के लिए संपादित कर सकते हैं? – atzero

+0

मेरा तथाकथित 'समाधान' है, किसी भी कारण से, काम करना बंद कर दिया ... जांच कर रहा है। –

0

प्रयास करें:

{ 
    "version": "0.1.0", 
    "command": "bash", 
    "isShellCommand": true, 
    "args": [ "myShellScript.sh" ], 
    "showOutput": "always" 
} 

या फिर आप अपने फाइल करने के लिए एक मामला जोड़ सकते हैं:

#!/bin/bash 

और फिर पथ को स्क्रिप्ट पर लिखें:

{ 
    "version": "0.1.0", 
    "command": "/path/to/script.sh", 
    "isShellCommand": true, 
    "args": [], 
    "showOutput": "always" 
} 
+0

मेरे स्क्रिप्ट कुटिया ऊपर शीर्ष है, लेकिन मैं के इन – atzero

+0

अद्यतन दोनों की कोशिश करेंगे: वे दोनों फ्लॉप क्षमा दोस्त कार्य =/ – atzero

2

मेरे Windows 10 मशीन है कि एक ताजा bash स्थापित किया है, यह मेरे लिए ठीक काम करता है: command रूप shellscript.sh की

{ 
    "version": "0.1.0", 
    "command": "bash", 
    "isShellCommand": true, 
    "args": [ "shellscript.sh" ], 
    "showOutput": "always" 
} 

कुटिया संस्करण मेरे लिए काम नहीं करता।

तुम भी एक मनमाना आदेश को चलाने के लिए bash -c "<command>" उपयोग कर सकते हैं:

{ 
    "version": "0.1.0", 
    "command": "bash", 
    "isShellCommand": true, 
    "args": ["-c", "echo \"test\""], 
    "showOutput": "always" 
} 

enter image description here

+0

32 या 64 बिट? और आपके shellscript.sh में क्या है? मैं इस बारे में माइक्रोसॉफ्ट के साथ एक मुद्दा खोला और वे एक ही मुद्दों मैं था दोहराने के लिए सक्षम थे - [कड़ी] (https://github.com/Microsoft/vscode/issues/6579) –

+0

64 बिट, के GitHub के लिए चर्चा बढ़ते हैं । –

संबंधित मुद्दे