Extraindo dados de arquivos em vários diretórios

1

Eu sou novo no perl e estou tentando criar um script perl (ou script bash) que pode extrair a palavra "Hello World" de arquivos com extensão .txt em vários diretórios. Para deixar isso mais claro, suponha que meu script seja colocado no diretório "/ home / pi / A" que tem subdiretórios - Pasta, Temp, Documento (os diretórios são desconhecidos para mim, é apenas um exemplo). O diretório / home / pi / A / Folder tem um arquivo .txt e / home / pi / Temp também tem um arquivo .txt. Aqui está o meu código

 #!/usr/bin/perl -w

 opendir(DIR, ".");
 @files = grep(/\.txt$/,readdir(DIR));
 closedir(DIR);

 foreach $file (@files) {
    print "$file\n";
}

A saída deve ser

Hello World  
Hello World
Hello World
So on... 
    
por Maria 20.01.2017 / 06:28

1 resposta

2

Ele encontrará o arquivo .txt de um diretório A e verificará se ele tem a palavra "hello world"

find A -type f -name "*.txt" -exec grep -h "hello world" {} +
    
por 20.01.2017 / 06:38