我是perl的新手,我目前仍然坚持这个问题。
我正在尝试像
这样的东西grep -rl "keyword" /.;
#where does the filenames get stored? let's say in $_?
#foreach valid file, do something
从我发现的一些网站上看,但似乎没有用?请帮助,谢谢!!
答案 0 :(得分:2)
怎么样
ls *keyword*
如果您尝试在perl中执行此操作
@files = glob("*keyword*");
for $file (@files)
{
print "$file\n";
}
请注意,perl中的grep
是核心函数,但它与正则表达式无关。它更像是SQL where
;它通过向每个元素应用函数(可能是也可能不是正则表达式)将数组过滤到子数组。
如果glob表达式不够好,你可以
@files = grep /(fun[kK]y_)keyword?/ glob("*");
答案 1 :(得分:1)
perl -E 'say for <*keyword*>'