동일한 열의 두 행마다 값을 빼고 상수를 곱합니다

동일한 열의 두 행마다 값을 빼고 상수를 곱합니다


이와 같은 두 개의 원시 파일이 있습니다

a1 a2 a3 a4 ....  
비1비2비3비4....  

다음 뺄셈과 곱셈 과정의 결과를 얻고 싶습니다. 따라서 세 번째 원시 데이터는 다음 모든 결과가 됩니다.

(b1-a1)*c (b2-a2)*c (b3-a3)*c (b4-a4)*c .....

답변1

노력하다

awk -v c=12 '{print ;} 
      NR==1 { for(i=1;i<=NF;i++) F[i]=$i ;} 
      NR==2 { for(i=1;i<=NF;i++) printf "%d ",($i-F[i])*c ; printf "\n" ;} '

어디

  • NR(레코드 수) 행을 선택합니다.
  • NF필드의 수입니다.
  • -v c=12awk에 값을 할당하는 데 사용됩니다 .
  • 선의 "크기"가 다른 경우 예측할 수 없는 값

관련 정보