我們已經知道了NodeJS自帶的`fs`模塊比較基礎,把一個目錄里的所有文件和子目錄都拷貝到另一個目錄里需要寫不少代碼。另外我們也知道,終端下的`cp`命令比較好用,一條`cp -r source/* target`命令就能搞定目錄拷貝。那我們首先看看如何使用NodeJS調用終端命令來簡化目錄拷貝,示例代碼如下:
~~~
var child_process = require('child_process');
var util = require('util');
function copy(source, target, callback) {
child_process.exec(
util.format('cp -r %s/* %s', source, target), callback);
}
copy('a', 'b', function (err) {
// ...
});
~~~
從以上代碼中可以看到,子進程是異步運行的,通過回調函數返回執行結果。