-1

큰 열이있는 csv 텍스트 파일이 있고 의 변수를 사용하여 column6column12의 변수를 사용하여 산술 변환을 적용하고 싶습니다. 다음텍스트 파일 열 bash에 산술 변환 적용

변형이있을 것이다 :

.*./ 각각 각 행의 값들의 elementwise 곱셈과 나눗셈을 나타낸다
column11=column11*1000.*column12./(8.314*(column6+273.15)) 

.

"2015-11-11 00:00:00.00",59841,0.327,3.275,1.89275,32.048,9,2435.477,2308.886,15.03365,31.2365067891251,98.7333,253 
"2015-11-11 00:00:00.10",59842,0.086,3.56975,2.20325,32.10205,10,2433.668,2298.364,15.03292,31.2299567962211,98.7473,253 
"2015-11-11 00:00:00.20",59843,0.26575,3.343,1.8285,32.06717,11,2433.833,2294.418,15.03119,31.2436473758837,98.72864,253 
"2015-11-11 00:00:00.30",59844,-0.1915,3.28175,1.793,32.12122,12,2433.668,2280.608,15.02593,31.2410875853554,98.7333,253 
"2015-11-11 00:00:00.40",59845,-0.20375,3.447,2.0135,32.08286,13,2433.833,2276.991,15.02812,31.2245602421307,98.73796,253 

이상적으로, 결과는 같은 파일에 저장됩니다 프로세스가 n 파일을 통해 반복에 의해 반복 될 것이다 : 여기

는 입력 텍스트 파일 모양을 샘플입니다.

awk, cut/paste 또는 단지 bash의 해결책이나 아이디어가 도움이 될 것입니다.

+2

당신의 수식에서 두 개의 점은 무엇인가없이 메인 루프를 쓸 수있다? – Cyrus

+0

점을 제거하고 "column"을 "$"로 바꾸고 awk -F, {...} 1 'file> outputfile'을 실행하십시오. 여기서'... '는 대체 후의 코드입니다. – karakfa

+0

awk man 페이지 나 인터넷 검색 결과를 보면이 질문에 답할 수 있습니다. 안으로 노력의 작은 비트 –

답변

-1

당신은 배열

for f in path/to/files/*.csv 
do 
    awk -F, '...' "$f" > "processed_$f" 
done