最近正好因業務的一個需求需要研究如何根據vscode的插件名來下載對應的插件以解決之前將插件打包上傳到服務器上面導致的延遲問題(插件體積小還好說,如果體積過大,即便是壓縮打成zip包,如果同一時刻很多人上傳或下載,系統延遲將會非常嚴重)。
之前一直想不明白,找半天找不到要給URL可以下載,最后不經意間有了靈感轉變一下思路搞定了。靈感是一個好東西。
本文主要講Node.js如何執行cmd,應用場景除了我開頭說的,其實還有很多,只有想不到,沒有做不到。正如我們經理說的,現在基本上20%的技術可以解決80%的業務問題,這個時代,技術有點泛濫,換言之,技術產能過剩。
一、下載node-cmd
npm install -g node-cmd
二、編寫測試函數(index.js)
var nodeCmd = require('node-cmd'); function runCmdTest() { var fileName = "ms-ceintl.vscode-language-pack-zh-hans"; console.log("fileNames:"+fileName); nodeCmd.get( 'code --install-extension '+fileName+' --extensions-dir="D:\1024Workspace\extension"', function(err, data, stderr){ console.log(data); } ); nodeCmd.run('code --install-extension '+fileName+' --extensions-dir="D:\1024Workspace\extension"'); } console.log(runCmdTest());
參考資料如下:
nodejs 運行CMD命令