我想用nodejs列出指定目錄下的所有文件。卡住,完整,反覆列出目錄中的所有文件與nodejs?
var fs = require('fs');
var path = require('path');
var walk = function(directoryName) {
fs.readdir(directoryName, function(e, files) {
files.forEach(function(file) {
fs.stat(directoryName + path.sep + file, function(e, f) {
if (f.isDirectory()) {
walk(directoryName + path.sep + file)
} else {
console.log('-' + file)
}
})
})
})
}
walk("/home")
三個問題的結果。
1.stuck
爲了執行在serveral的分鐘節點控制檯以上的NodeJS,光標停在那裏,沒有節點PROMT chracter >
顯示器,只是靜態遊標。
靜態遊標是否意味着nodejs程序被卡住了?
2.完整性
對於列出的所有文件,它們都沒有在光標停在那裏之前是否爲真或假?
3.repeatedly
在附件中,許多相同的文件名上市,如BasicLatin.js
和CombDiacritMarks.js
,相同的文件反覆上市?
要解決該聲明console.log('-' + file)
爲console.log(directoryName + path.sep + file)
,並保存爲list.js與命令node list.js
,2期和解決問題3運行。
列出所有文件,並且不重複同一個文件。
在終端輸入node
並逐行運行程序。
在節點控制檯中運行時,爲什麼沒有列出所有文件後顯示節點提示字符>
?
看來程序卡在這兒了?