Работа с файловой системой 
		
		
		
		Я делаю плеер на node-webkit, подскажите как через javascript, jquery или в крайнем случае через node.js можно производить поиск файлов mp3 по файловой системе или внутри определённой папки и возможно ли это вообще? 
	 | 
	
		
 Вот почти то, что и хотелось. Немного неясно как заставить это искать mp3, но я справлюсь. 
	 | 
	
		
 Цитата: 
	
  | 
	
		
 Разве что-то неверно сказал? Вопрос был про поиск файлов на компе, довольно четко сформулирован. Я немного отредактировал скрипт со стакаоверфлёуа и теперь он исчет мп3 файлы в указанной папке: 
	
var mp3find = /\.mp3$/;
  var fs = require('fs');
  var walk = function(dir, done) {
    var results = [];
    fs.readdir(dir, function(err, list) {
      if (err) return done(err);
      var pending = list.length;
      if (!pending) return done(null, results);
      list.forEach(function(file) {
        file = dir + '/' + file;
        fs.stat(file, function(err, stat) {
          if (stat && stat.isDirectory()) {
            walk(file, function(err, res) {
              results = results.concat(res);
              if (!--pending) done(null, results);
            });
          } else {
            if(mp3find.test(file)){results.push(file)}
            if (!--pending) done(null, results);
          }
        });
      });
    });
  };
  walk('D:\\node-webkit', function(err, results) {
  if (err) throw err;
  console.log(results);
  });
Не знаю пока, как обнаруживать разделы диска программно, но скоро узнаю. Совсем не откажусь от наводочки на то, как же все таки получить массив вроде ['C://','D://']  | 
	
		
 Вот этот милый код кладёт названия дисков в массив: 
	
var partfind = /[A-Z]:\s/;
  var partitions = [];
  var spawn = require('child_process').spawn,
    list  = spawn('cmd');
list.stdout.on('data', function (data) {
  console.log(''+data);
  if(partfind.test(data)){partitions.push((''+data)[0])}
});
list.stderr.on('data', function (data) {
  console.log('stderr: ' + data);
});
list.on('exit', function (code) {
  console.log(partitions);
  alert(partitions)
});
list.stdin.write('wmic logicaldisk get name\n');
list.stdin.end();
Только там кроме нужных ещё дисковод, дискетовод и дэймонтулз, но это не страшно.  | 
	
		
 Цитата: 
	
  | 
| Часовой пояс GMT +3, время: 17:39. |