Javascript 如何打印所有子目录-node.js
同样,im使用node.js堆叠,需要您的帮助 我尝试为cmd编写脚本,搜索当前目录下的所有子目录(process.cwd), 然后只打印包含用户给我的字符串的一个(使用process.argv[2]) 我在这里找一些没有成功的answar。 也可以试着用“stat.isDirectory”和“fs.readdir”来做,但我仍然需要学习更多的方法来做 希望有人能帮助我 无论如何谢谢你,Javascript 如何打印所有子目录-node.js,javascript,node.js,frontend,subdirectory,Javascript,Node.js,Frontend,Subdirectory,同样,im使用node.js堆叠,需要您的帮助 我尝试为cmd编写脚本,搜索当前目录下的所有子目录(process.cwd), 然后只打印包含用户给我的字符串的一个(使用process.argv[2]) 我在这里找一些没有成功的answar。 也可以试着用“stat.isDirectory”和“fs.readdir”来做,但我仍然需要学习更多的方法来做 希望有人能帮助我 无论如何谢谢你, eyal我从这个链接使用了getDirectories函数 请在服务器端尝试此代码 var fs = req
eyal我从这个链接使用了
getDirectories
函数
请在服务器端尝试此代码
var fs = require('fs'),path = require('path');
var userStr = 'user_provided_string';
function getDirectories(srcpath) {
return fs.readdirSync(srcpath).filter(function(file) {
return fs.statSync(path.join(srcpath, file)).isDirectory();
});
}
getDirectories('.').forEach(function(dirName,i){
if(dirName.indexOf(userStr) > -1){
console.log(dirName);
return;
}
});
好的,谢谢。但是我如何只打印包含用户给我的字符串的一个呢?为什么不循环遍历目录名并过滤它..比如
var userStr='user\u provided\u string';getDirectories('.').forEach(函数(dirName,i){if(dirName.indexOf(userStr)>-1){console.log(dirName);return;})代码>像那样吗,还是不要打印任何东西。也许我把所有的子目录放在数组中,然后做一个循环?不像这样,getDirectories
是同步的,你可以在这个函数之外调用它。。将代码移到getDirectories
函数的外部。检查,但我不确定输出。