2016-08-30 33 views
0

假設我在目錄中有三個文件,我想檢查所有這些文件的統計信息並將生日時間發送給客戶端,它總是返回一個文件統計信息,正如您可以在數據中看到的那樣。我如何獲得目錄中所有文件的統計信息?如何檢查目錄中多個文件的統計信息並將其作爲json發送給客戶端?

app.js

var path = './logs/ditLogs' 
    fs.stat(path, function (err,stats) { 
     console.log('STATS',stats); 
     fileData.birthtime = stats.birthtime; 
     //callback(stats.mtime); 
    }); 

數據

{ birthtime: Tue Jul 12 2016 09:33:14 GMT-0400 (Eastern Daylight Time), 
    filename: ['server.log', 'server1.log' ] } 
+0

http://caolan.github.io/async/docs.html#.map –

回答

1

異步圖書館是要走的路。 http://caolan.github.io/async/docs.html

我建議這樣的事情

var dirPath = './logs/ditLogs'; //this will get you list of all files. in directory var files = fs.readdirSync(dirPath); var objToReturn = {}; //then using async do like this async.eachSeries(files, function (file, callback) { var filePath = path.join(dirPath, file); fs.stat(filePath, function(err, stats){ //write stats data into objToReturn callback(); }); }, function(err){ //final callback when all files completed here send objToReturn to client });

希望這有助於。

+0

stats to objTOReturn我應該寫入數組像ObjToReturn.statsArray = []? – hussain

+0

你可以寫任何你想要的東西。這只是一個例子,你甚至可以用字符串寫。統計信息是文件統計信息的對象。所以你從那裏獲取數據並將其推入到對象的數組中,然後將結果返回給用戶。 –

+0

不幸的是我用你的方法,但仍然只獲得一個文件的統計信息 – hussain

相關問題