欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nodejs調(diào)用cmd命令實現(xiàn)復(fù)制目錄

 更新時間:2015年05月04日 09:15:05   投稿:hebedich  
本文給大家介紹的是如何在nodejs中調(diào)用CMD命令,從而實現(xiàn)目錄的復(fù)制,非常的實用,有需要的小伙伴可以參考下。

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

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

1.復(fù)制目錄

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

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

var dirCache = {};//緩存減少判斷
function makedir (pathStr, callback) {
  if (dirCache[pathStr] == 1) {
    callback();
  } else {
    fs.exists(pathStr, function (exists) {
      if (exists == true) {
        dirCache[pathStr] == 1;
        callback();
      } else {
        makedir(path.dirname(pathStr), function () {
          fs.mkdir(pathStr, function () {
            dirCache[pathStr] == 1;
            callback();
          })
        });
      }
    })
  }
};

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

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

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

fs.writeFile('xcopy.bat', cmdstr, function (err) {
  if (err) throw err;
  var exec = require('child_process').exec;
  exec('call "'+process.cwd()+'/xcopy.bat',
    function (error, stdout, stderr) {
      if (error !== null) {
        //console.log('exec error: ' + error);
      }
    
  });
}); 

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

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

相關(guān)文章

  • Node.js的Web模板引擎ejs的入門使用教程

    Node.js的Web模板引擎ejs的入門使用教程

    ejs是Node世界的開源模板引擎中比較有人氣的一個,而且并不只是在Express框架中才可以使用,今天為大家?guī)鞱ode.js的Web模板引擎ejs的入門學(xué)習(xí)教程,其中側(cè)重于ejs的layout頁面布局放面
    2016-06-06
  • express框架,報錯:“Cannot set headers after they are sent to the client”,解決方法總結(jié)

    express框架,報錯:“Cannot set headers after t

    這篇文章主要介紹了express框架,報錯:“Cannot set headers after they are sent to the client”,解決方法,結(jié)合實例形式總結(jié)分析了常見的問題原因與對應(yīng)的解決方案,需要的朋友可以參考下
    2023-05-05
  • node.js之基礎(chǔ)加密算法模塊crypto詳解

    node.js之基礎(chǔ)加密算法模塊crypto詳解

    這篇文章主要介紹了node.js之基礎(chǔ)加密算法模塊crypto詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • nodejs實現(xiàn)超簡單生成二維碼的方法

    nodejs實現(xiàn)超簡單生成二維碼的方法

    這篇文章主要介紹了nodejs實現(xiàn)超簡單生成二維碼的方法,結(jié)合實例形式分析了nodejs基于qr-image插件生成二維碼的相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • benny簡單框架benchmark功能使用

    benny簡單框架benchmark功能使用

    這篇文章主要為大家介紹了benny簡單框架benchmark功能使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • 使用koa-log4管理nodeJs日志筆記的使用方法

    使用koa-log4管理nodeJs日志筆記的使用方法

    這篇文章主要介紹了使用koa-log4管理nodeJs日志筆記的使用方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Node.js開發(fā)者必須了解的4個JS要點

    Node.js開發(fā)者必須了解的4個JS要點

    這篇文章主要介紹了Node.js開發(fā)者必須了解的4個JS要點,Node.js是一個面向服務(wù)器的框架,立足于Chrome強大的V8 JS引擎。盡管它由C++編寫而成,但是它及其應(yīng)用是運行在JS上的,需要的朋友可以參考下
    2016-02-02
  • 通過nodejs 服務(wù)器讀取HTML文件渲染到頁面的方法

    通過nodejs 服務(wù)器讀取HTML文件渲染到頁面的方法

    今天小編就為大家分享一篇通過nodejs 服務(wù)器讀取HTML文件渲染到頁面的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • node.js中PC端微信小程序包解密的處理思路

    node.js中PC端微信小程序包解密的處理思路

    我們使用node.js去寫一個解碼的程序。根據(jù)上邊加密的流程,我們首先讀取加密文件,把前6個字節(jié)的固定字符串去除,這篇文章主要介紹了node.js中PC端微信小程序包解密,需要的朋友可以參考下
    2021-12-12
  • 利用yarn實現(xiàn)一個webpack+react種子

    利用yarn實現(xiàn)一個webpack+react種子

    其實以前就寫過如何使用React-router和Webpack快速構(gòu)建一個react程序。后來發(fā)現(xiàn)版本太老,于是乎最近又重新組織了下結(jié)構(gòu),使用最近發(fā)布的yarn作為包管理工具,介紹下基本安裝步驟,有需要的朋友們下面來一起看看吧。
    2016-10-10

最新評論