亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

怎么用nodejs里面的子進程模塊中exec創建文件夾

怎么用nodejs里面的子進程模塊中exec創建文件夾

慕虎7371278 2019-05-13 09:08:20
怎么用nodejs里面的子進程模塊中exec創建文件夾
查看完整描述

2 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

Node.js事件驅動和非阻塞I/O的特性,使其在高效處理I/O方面有較大優勢。也正由于這些特性,Node在某些類型的業務處理上并不擅長。比如處理一個計算量較大的CPU密集型業務時,就可能會造成事件阻塞。這時可以使用child_process模塊啟動一個子進程來處理這一任務,從而釋放事件循環。子進程查模塊還可以用來執行一個外部命令(如:Linux命令、腳本等)。
在當前Node.js的版本(v0.12.4)中,child_process模塊提供了4個異步方法可以用來創建子進程:exec、execFile、fork、spawn,這些方法中除fork方法外都提供了同步版本的方法。本文將結合一些應用場景介紹child_process模塊的用戶。
執行外部命令
創建子進程
從可執行程序啟動子進程
運行Node模塊
進程控制與中止

1. 執行外部命令:child_process.exec(command[, options], callback)
1.1 使用示例
執行外部命令可以使用exec方法,與spawn方法相比,exec方法更為便捷,exec提供一個回調函數,可以更方便的處理命令執行結果的。示例哪下:
var exec = require('child_process').exec;

exec('cat *.js bad_file | wc -l',
function (error, stdout, stderr) {
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error); //沒有錯誤產生,所以本行無輸出
}
});
在上面代碼中,執行cat *.js bad_file | wc -l命令,用于統計當前目錄下所有“.js”文件和名為“bad_file”文件的內容行數,由于“bad_file”文件不存在,因此會產生一個"stderr"。執行結果如下:
stdout: 548
stderr: cat: bad_file: No such fil





查看完整回答
反對 回復 2019-05-14
?
ITMISS

TA貢獻1871條經驗 獲得超8個贊

 nodejs是一種單線程模型,但是,使用nodejs的child_process模塊可以實現多進程任務。利用child_process可以創建子進程,實現子進程和主進程之間的通信。
  nodejs v0.12.7版本child_process提供以下同步和異步的方式創建進程:
  異步創建:
child_process.spawn(command[, args][, options])
options.stdio
options.detached
options.customFds
child_process.exec(command[, options], callback)
child_process.execFile(file[, args][, options][callback])
child_process.fork(modulePath[, args][, options])
同步創建:
child_process.spawnSync(command[, args][, options])
child_process.execFileSync(command[, args][, options])
child_process.execSync(command[, options])




查看完整回答
反對 回復 2019-05-14
  • 2 回答
  • 0 關注
  • 662 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號