给自己写的一个小工具,为了便于在代码文件夹中,搜索包含特定字符串的文件名称,方便debug时查找一些功能。
之所以用Lua是因为电脑上只有Lua,懒得安装别的了。
在cmd中,和search.lua同一路径下,输入lua search.lua "你想要查找的字符串",文件夹名字可在代码中修改。
local lfs = require "lfs"
local io = require "io"
local string = require "string"
function SearchforStringInWhichFile (path,finddata)
for file in lfs.dir(path) do
if file ~= "." and file ~= ".." and file ~=".svn" then
local f = path..'\\'..file
local attr = lfs.attributes (f)
assert (type(attr) == "table")
if attr.mode == "directory" then
SearchforStringInWhichFile(f,finddata)
elseif attr.mode == "file" then
local file = io.open(f,"r")
local data = file:read("*a")
file:close()
if string.find(data,finddata) ~= nil then
print(f)
end
end
end
end
end
for i, v in ipairs(arg) do
if i == 1 then
find = v
end
end
SearchforStringInWhichFile("D:\\code",find)