特定のディレクトリとすべてのサブディレクトリを検索するスクリプトを Perl で作成しようとしています。これの目的は、スクリプトがディレクトリ内のすべてのファイルとすべてのサブディレクトリを読み取って、特定のテキスト文字列 (私が定義した任意の文字列) を探す必要があることです。ファイル内に文字列が見つかった場合、スクリプトはファイルのパスと名前を新しいテキスト ファイルに出力し、ディレクトリ ツリー内のすべてのファイルを続行します。
このようなものがありますが、続行する方法がわかりません。私は Perl の初心者であり、このすべてのオプションについて手がかりがありません。
#!/usr/bin/perl
use strict;
use File::Find;
my $dir = 'C:\PATH\TO\DIR';
my $string = "defined";
find(\&printFile, $dir);
sub printFile {
my $element = $_;
open FILE, "+>>Results.txt";
if(-f $elemento && $elemento =~ /\.txt$/) {
my $boolean = 0;
open CFILE, $elemento;
while(<CFILE>) {
if ($string) {
print FILE "$File::Find::name\n";
}
close CFILE;
}
}
close FILE;
}
sleep(5);