簡體   English   中英

在Windows OS上使用node.js執行sh文件

[英]execute sh file using node.js on windows OS

我正在開發node.js應用程序。 我正在嘗試從node.js文件(在Windows操作系統上)執行.sh文件。但是它拋出錯誤,提示“ sh”未被識別為內部或外部命令,可操作程序或批處理文件。

文件hi.sh

echo "Hi There!"

檔案app.js

var exec = require('child_process').exec;
var myscript = exec('sh ~/hi.sh');
myscript.stdout.on('data',function(data){
    console.log(data); 
});
myscript.stderr.on('data',function(data){
    console.log(data); 
});

Windows不支持開箱即用的Bash腳本語言。

在Windows 10中,您可以安裝WSL (Linux的Windows子系統),這將為您提供Bash支持。

安裝WSL之后,您應該可以使用exec('bash ~/hi.sh'); (未經測試),但可以在PowerShell中使用它。

PS> bash -c "bash --version"
GNU bash, Version 4.3.11(1)-release (x86_64-pc-linux-gnu)[...]

在Windows上,可以使用批處理腳本( .bat文件)。 因此,您可以擁有hi.bat

echo "Hi There!"

然后大概用以下命令運行它:

var myscript = exec('cmd hi.bat');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM