특정 ID와 연결된 문자열 바꾸기

특정 ID와 연결된 문자열 바꾸기

input.txt에서 ID가 4000 이상인 행의 마지막 열 요소만 문자열 "P"로 바꾸려면 어떻게 해야 합니까?

즉, 첫 번째 행(ID = 4304)과 세 번째 행(ID = 4000)의 마지막 요소("N" 및 "C")를 "P"로 바꾸고 싶습니다.

입력.txt

4304,N,-9.700,-7.680,58.330,-2.3,N
2940,S,-10.440,-3.450,54.270,2.2,S
4000,C,-13.655,-13.730,59.405,-1.5,C
2931,C,-9.910,-2.420,57.610,0.2,C

출력.txt

4304,N,-9.700,-7.680,58.330,-2.3,P
2940,S,-10.440,-3.450,54.270,2.2,S
4000,C,-13.655,-13.730,59.405,-1.5,P
2931,C,-9.910,-2.420,57.610,0.2,C

나는 무엇을 해야 합니까? 감사해요!

답변1

다음과 같은 작업이 수행됩니다.

awk -F, '$1=="4304" || $1=="4000" {$NF="P"}1 ' OFS=, input.txt >output.txt

관련 정보