2015-04-15 2 views
0

Я пытаюсь подсчитать соответствующий символ, используя команду grep в скрипте Perl. Ниже скрипта подсчитывается весь каталог, мой желаемый вывод должен содержать только количество входных файлов, а не весь каталог, некоторые помогают мне это сделать.Как использовать системную команду 'grep' в perl-скрипте

#! use/bin/perl 

use strict; 


print"Enter file name for Unzip\n"; 
print"File name: "; 
chomp(my $Filename=<>); 
system("gunzip -r ./$Filename/*\n"); 
system('grep -c "@SRR" ./$Filename/*'); 

Это дает полный список каталогов.

+0

Crossposting: http://askubuntu.com/q/609452/336375 – Cyrus

+0

Вы поняли вопрос выше ?? –

+0

У вас есть ***, чтобы использовать команду grep системы, или вы не знаете, как использовать команду 'grep' в Perl? Если вам не нужно использовать команду grep системы, почему бы не использовать ее в Perl? –

ответ

0
#! use/bin/perl 
use strict; 
print"Enter file name for Unzip\n"; 
print"File name: "; 
chomp(my $Filename=<>); 
system("gunzip -r ./$Filename\*"); 
system("grep -c '\@SRR' ./$Filename\*"); 

Пожалуйста, сообщите, если я неправильно понял вопрос. Но выше код дает нам количество строк, соответствующих @SRR, по предоставленному zip-файлу.

Также вам не нужно разархивировать рассчитывать вы можете непосредственно сделать это

system("zgrep -c '\@SRR' $Filename") 

вместо

system("gunzip -r ./$Filename\*"); 
system("grep -c '\@SRR' ./$Filename\*"); 
0

мой $ Var = cat filename | grep "your word";

Thanks, nilesh.

Смежные вопросы