2014-10-12 6 views
-1

파일의 모든 홀수 열을 다음 짝수 열로 나누고 싶습니다.awk : 짝수 열을 따라 홀수 열을 나눕니다.

: 컬럼 1/2 열, 3 열/column4 ......, columnN/columnN + 1

있는 test1.txt

1 4 1 2 1 3  
1 2 4 2 3 9 

원하는 출력

0.25 0.5 0.333 
0.5 2 0.333 

는이 시도

awk 'BEGIN{OFS="\t"} { for (i=2; i<NF+2; i+=2) printf $(i-1)/i OFS; printf "\n"}' 

하지만 작동하지 않습니다.

나는 실제 파일에 매우 크고 가변적 인 (그러나 항상 짝수) 열이 있다는 것을 추가하고 싶습니다. 그리고 나는 그것들 모두에서 작동하는 것을 원합니다.

+0

당신의 욕망 입력은 오타가있는 것 같습니다. 마지막 줄 2는 0.333이어야합니다. – Ashkan

+0

네, 감사합니다. 나는 그것을 고쳤다. – Ethanomics

답변

1
awk '{for(i=1;i<NF;i+=2)printf "%f%s",$i/$(i+1),OFS;print "";}' input.txt 

출력 : 귀하의 요구에 더 많은 정보를 원하시면 here를 참조하는 인쇄 형식을 조정할 수 있습니다

0.250000 0.500000 0.333333 
0.500000 2.000000 0.333333 

.

+1

후행 공백을 추가하지 않으려면 printf "% f % s", $ (i-1)/$ i, (i

+0

감사합니다 !!! 나는 $ 표시를 잊어 버렸습니다. 나는 첫 번째 게시물이 더 좋았 으면 좋겠다. 그러나 정정과 개선에 감사드립니다. – Ethanomics

관련 문제