المتطلبات على النحو التالي:
هناك حوالي 40 متر من الملفات في الدليل بأكمله ، وهناك عدد لا يحصى من الملفات. مع مرور الوقت ، لا يمكنني تذكر الملف الذي يوجد فيه السلسلة ، لذلك. قدمت Node.js القوية والعمى لاول مرة رائعة.
لا يوجد فرق بين تثبيت Node.js في Windows وتثبيت البرامج العادية. بعد التثبيت ، افتح الاختصار إلى Node.js ، أو CMD مباشرة ، كما تعلمون.
إنشاء findString.js
نسخة الكود كما يلي:
VAR PATH = مطلوب ("المسار") ؛
var fs = require ("fs") ؛
var filepath = process.argv [2] ؛
var lookingforstring = process.argv [3] ؛
RecursivereadFile (FilePath) ؛
وظيفة RecursivereadFile (اسم الملف) {
إذا (! fs.existssync (اسم الملف)) ؛
if (isfile (filename)) {
تحقق (اسم الملف) ؛
}
if (isDirectory (filename)) {
ملفات var = fs.readdirsync (اسم الملف) ؛
files.foreach (function (val ، key) {
var temp = path.join (اسم الملف ، val) ؛
إذا (Isdirectory (temp))) recursivereadfile (temp) ؛
إذا (Isfile (temp)) تحقق (temp) ؛
})
}
}
فحص الوظيفة (اسم الملف) {
var data = readfile (filename) ؛
var exc = new regexp (lookingforstring) ؛
إذا (exc.test (بيانات))
console.log (اسم الملف) ؛
}
وظيفة isDirectory (اسم الملف) {
if (fs.existssync (filename)) return fs.Statsync (filename) .isdirectory () ؛
}
وظيفة isfile (اسم الملف) {
if (fs.existssync (filename)) return fs.statsync (filename) .isfile () ؛
}
وظيفة readfile (اسم الملف) {
if (fs.existssync (filename)) return fs.readfilesync (اسم الملف ، "UTF-8") ؛
}
معلمتان: المعلمة الأولى هي "اسم المجلد" والمعلمة الثانية هي "السلسلة التي تبحث عنها"
كما هو موضح في الصورة:
اطبع مسار الملف ، وينتهي من العمل. السرعة شرسة حقا ، تعمي العيون. . . إذا كنت تستخدم البحث عن النص Java ، فستكون بائسة ...