EasyDSS流媒體服務提供一站式的轉碼、點播、直播、時移回放服務,極大地簡化了開發和集成的工作。點播功能主要包含:上傳、轉碼、分發。直播功能,主要包含:直播、錄像,直播支持RTMP輸入,RTMP/HLS/HTTP-FLV的分發輸出;錄像支持自定義保存時長、檢索及下載。
Sh腳本介紹
Sh腳本也就是我們常用的Shell腳本,與Windows/Dos下的批處理相似,也就是用各類命令預先放入到一個文件中,方便一次性執行的一個程序文件,主要是方便管理員進行設置或者管理用的。但是它比Windows下的批處理更強大,比用其他編程程序編輯的程序效率更高,它使用了Linux/Unix下的命令。
bat腳本
bat腳本是windows上所用的腳本,我們經常使用的cmd一些命令就可以使用。也許有的朋友會問爲什麼不直接使用powershell腳本?因爲古老的一些服務器上面沒有安裝powershell,此時就需要用到bat腳本。
那麼本片文章將會爲大家介紹一下Nodejs中調用bat或sh腳本的方法。
Nodejs中調用bat或sh腳本
1. 安裝shelljs
npm install shelljs --save
2. 其他的相關依賴
npm install co --save
3. 封裝異步方法
var shell = require('shelljs');
exports.exec = function(command) {
return Promise.resolve({
then: function(onFulfill, onReject) {
shell.exec(command, function(code, stdout, stderr) {
onFulfill({ code: code, out: stdout, error: stderr });
})
}
});
}
4. 同步調用執行
var ossshell = require('./shell.js');
function demo(){
return Promise.resolve({
then: function(onFulfill, onReject) {
co(function*() {
var command = "";
if (platform.startsWith("win")) {
//如果是windows
command = `call trans_process.bat`;
} else {
//如果是linux
command = `sh ./trans_process.sh`;
}
yield ossshell.exec(command);
onFulfill();
}
}).catch(function(e) {
onReject(new Error(e));
})
}
});
}