国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

nodejs調用cmd命令實現復制目錄

2024-05-06 16:19:12
字體:
來源:轉載
供稿:網友

本文給大家介紹的是如何在nodejs中調用CMD命令,從而實現目錄的復制,非常的實用,有需要的小伙伴可以參考下。

工作中一直需要對一些官網進行文件復制,并且替換內部的一些信息,以前都是手動操作的,或者通過自己寫的firefox擴展來進行文件操作的。

現在前端有nodejs了,為什么不用nodejs寫個一鍵式的呢~~

1.復制目錄

復制文件的時候,如果直接創建一個不存在的文件目錄下就不成功了。要上級目錄存在才可以。(nodejs API接觸時間不長,如有有誤,謝謝指正)。

這樣在寫入文件的時候就檢測一下目錄是否存在,不存在則判斷上級目錄,之后一級一級目錄創建回來,之后就可以復制文件了

 

 
  1. var dirCache = {};//緩存減少判斷 
  2. function makedir (pathStr, callback) { 
  3. if (dirCache[pathStr] == 1) { 
  4. callback(); 
  5. else { 
  6. fs.exists(pathStr, function (exists) { 
  7. if (exists == true) { 
  8. dirCache[pathStr] == 1; 
  9. callback(); 
  10. else { 
  11. makedir(path.dirname(pathStr), function () { 
  12. fs.mkdir(pathStr, function () { 
  13. dirCache[pathStr] == 1; 
  14. callback(); 
  15. }) 
  16. }); 
  17. }) 
  18. }; 

2.后來還是考慮通過CMD命令“xcopy”實現,但是試了好9,直接執行,可是一直不行,有解決的,歡迎指正

 

 
  1. var exec = require('child_process').exec; 
  2. exec('xcopy D://WORK_new//odinQuest D://WORK_new//newGame /s /e /Q /Y /I'
  3. function (error, stdout, stderr) { 
  4. if (error !== null) { 
  5. //console.log('exec error: ' + error); 
  6.  
  7. }); 

后來通過將CMD命令寫入文件,通過call的方式調用的,就可以了。

 

 
  1. fs.writeFile('xcopy.bat', cmdstr, function (err) { 
  2. if (err) throw err; 
  3. var exec = require('child_process').exec; 
  4. exec('call "'+process.cwd()+'/xcopy.bat'
  5. function (error, stdout, stderr) { 
  6. if (error !== null) { 
  7. //console.log('exec error: ' + error); 
  8.  
  9. }); 
  10. });  

嗯,代碼寫的也就那樣,都是一步步的異步嵌套,就不放出來了,省的被笑話

以上所述就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 东辽县| 洮南市| 阿鲁科尔沁旗| 阳泉市| 夏河县| 桃江县| 新津县| 北海市| 射阳县| 平武县| 松阳县| 柳江县| 桃园市| 都兰县| 滨海县| 苏尼特右旗| 密山市| 奉新县| 紫阳县| 铜梁县| 垫江县| 渑池县| 苍梧县| 依兰县| 汽车| 来宾市| 云阳县| 环江| 尼木县| 黑龙江省| 大新县| 白朗县| 武义县| 民丰县| 靖边县| 广东省| 图们市| 蛟河市| 冕宁县| 天镇县| 偃师市|