Node.js melaksanakan pencarian untuk rentetan tertentu dan fail yang terletak dalam directory_node.js

WBOY
Lepaskan: 2016-05-16 16:37:48
asal
1584 orang telah melayarinya

Keperluan adalah seperti berikut:

Terdapat kira-kira 40 M dalam keseluruhan direktori, dan terdapat banyak fail Kerana ia telah lama berlalu, saya tidak dapat mengingati fail rentetan itu, jadi. Node.js yang berkuasa dan membutakan membuat penampilan sulungnya.

Memasang Node.js di bawah Windows tidak berbeza dengan memasang perisian biasa Selepas pemasangan, buka pintasan Node.js, atau terus cmd, anda tahu.

Buat findString.js

Salin kod Kod adalah seperti berikut:

var path = require("path");
var fs = memerlukan("fs");

var filePath = process.argv[2];
var lookingForString = process.argv[3];
recursiveReadFile(filePath);

fungsi rekursifReadFile(Nama Fail){
if(!fs.existsSync(fileName)) return;
if(isFile(fileName)){
semak (Nama fail);
}
if(isDirectory(fileName)){
var files = fs.readdirSync(Nama Fail);
files.forEach(function(val,key){
var temp = path.join(Nama Fail,val);
If(isDirectory(temp)) recursiveReadFile(temp);
Jika (isFile(temp)) check(temp);
})
}
}
semak fungsi(Nama Fail){
var data = readFile(fileName);
var exc = RegExp baharu(lookingForString);
If(exc.test(data))
console.log(Nama Fail);

}
fungsi ialahDirektori(Nama Fail){
If(fs.existsSync(Nama Fail)) kembalikan fs.statSync(Nama Fail).isDirectory();
}
fungsi ialahFail(Nama Fail){
if(fs.existsSync(fileName)) return fs.statSync(fileName).isFile();
}
function readFile(fileName){
if(fs.existsSync(fileName)) return fs.readFileSync(fileName,"utf-8");
}

Dua parameter: parameter pertama ialah "nama folder" dan parameter kedua ialah "rentetan yang anda cari"

Gambar:

Cetak laluan fail, selesai, dan panggilnya sehari. Kelajuannya sungguh garang dan menyilaukan. . . Jika anda menggunakan carian teks penuh java, anda akan menghadapi masalah...

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan