2013-01-24 8 views
0

perl에서 백틱 연산자 내에서 awk 명령을 실행하고 싶습니다. 그것은 나에게 오류를주고있다. 나는 따옴표를 도주하는 것을 시도했다, 그러나 아무것도 작동하는 것을 보이지 않는다.perl 스크립트에서 awk 명령을 실행하십시오.

my @fieldCnt=`head -1 $inputFileDir/$cmdParams{mas}|awk -F, \'print NF\'`; 
+4

왜 perl에서 awk를 실행하고 있습니까? – TLP

+0

awk 명령에서 중괄호 ('{}) '는 어디에 있습니까? – Vijay

+0

정보를 제공해 주셔서 감사합니다. 누락 된 중괄호는 문제였습니다 – Arav

답변

4

나는 단지 awk를 사용하는 대신 perl 스크립트 내에서 그렇게 할 것입니다. 나는 당신이 달성하려고하는 것을 이해한다면, 당신은

# Open the file for reading 
open my $fh,"$cmdParams{mas}" or die "Unable to open: $cmdParams{mas}"; 
my $firstLine = <$fh>; # Get the first line 
close($fh); # close the file 
my @items = split(',',$firstLine); # Get the items separated by comma's 
$numberOfFields = scalar(@items); # Get the count of the number of items 

는 희망이 도움이됩니다 다음, 쉼표로 구분 라인의 항목 수를 찾고 있습니다.

+0

고마워요. 나는 그 파일들을 열지 않으려한다. 내가 awk를 사용하여 한 줄의 코드를 시험해보고 싶다. AWK 중괄호가 누락되었습니다. 그 대답은 바로 대답 – Arav

+0

대단히 환영합니다. – Glenn

관련 문제