我發現node.js shell腳本在Windows和Linux中的工作方式有所不同。我有一系列使用child_process庫同步執行的命令。Nodejs shell腳本在Linux中正常工作,但在Windows中無法正常工作。爲什麼它不會執行多個命令
var cmd = `echo 'hello'
echo 'Stack'
echo 'Overflow'`
var exec = require('child_process').execSync;
var options = {
encoding: 'utf8'
};
console.log(exec(cmd, options));
在Linux中
因爲我希望它這樣執行所有3個echo
語句和輸出。
hello
Stack
Overflow
在Windows
而在Windows中,我不知道這是否是執行3次或沒有。我只知道只輸出第一個echo
命令。
hello
爲什麼我看到這個區別,我可以修復它,以便Windows腳本輸出相似,它在Linux上的方式嗎?
只是出於好奇,當你將'cmd'改爲'var cmd ='echo'hello'&& echo'Stack'&& echo'Overflow'「'會發生什麼? – pudility
不確定tbh。當我回到我的電腦(在我的手機上)時,我可以試試它 – Cameron
那太棒了!我會嘗試,但我目前沒有可以輕鬆訪問的Windows計算機。 – pudility