awk 스크립트를 perl 스크립트로 바꾸는 명령이다.

사용법 : a2p [옵션] 파일명 
-F<문자> : 구분자를 정의한다. awk의 필드를 나누는 기준이 되는 구분자 변수인 FS 변수를 지정된 문자로 정의한다. 
-o : 예전 awk 형식의 스크립트를 변환한다. 

awk 스크립트를 perl 스크립트로 변환하는 명령어이다.
awk 명령어에서 예제로 만든 간단한 스크립트를 가져와 변환해보자. 이 예제는 문서의 단어 개수를 체크하는 스크립트이다.
word.txt 라는 문서의 단어 수를 체크해 보자.

# awk -f word.awk word.txt 
Word Count: 580 

이 awk 스크립트를 perl 스크립트로 변환 한다.

# a2p word.awk 

#!/usr/bin/perl 
eval 'exec /usr/bin/perl -S $0 $(1+"$@"}' 
   if $running_under_some_shell; 
            # this emulates #! processing on NIH machines. 
            # (remove #! line above if indigestible) 
eval '$'.$1.'$2;' while $ARGV[0] =~ /^([A-Za-z_0-9]+=)(.*)/ && shift; 
            # process any FOO=bar switches 

$[ = 1;   # set array base to 1 
$, = ' ';    # set output field separator 
$\ = "\n";   # set output record separator 

$word = 0; 

while (<>) { 
   chomp;     # strip recored separator 
   @Fld = split(' ', $_, 9999); 
   $word += $#Fld; 
} 

print 'Word Count: ' . $word; 

a2p는 perl 스크립트로 변환하여 표준 출력으로 변환된 문서를 화면에 보여준다. 이 표준 출력을 word.perl 이라는 perl 스크립트 파일로 만들어 실행하면 같은 결과를 얻을수 있다.

# a2p word.awk > word.perl 
# perl word.perl word.txt 
Word Count : 580 

[관련명령어]
s2p sed스크립트를 perl 스크립트로 변환
2005/06/27 17:57 2005/06/27 17:57

트랙백 주소 :: 이 글에는 트랙백을 보낼 수 없습니다