파일에서 초과 공간 제거

파일에서 초과 공간 제거

아래 코드를 사용하여 valar.csv 파일의 항목을 복사하고 열에 값을 입력하고 있습니다.

awk '
NR==1   {print; next}
        {$1=$1; print}
        {$2 = $2 "D"; $3 = 3; $4 = ($4==1?2:1); $5 = $6 = " "; $7 = "Y"}
1' OFS='\t' valar.csv

그러나 파일에 추가 공간이 있는지 고려하여 이를 행으로 처리하고 값을 업데이트합니다.

추가 공간을 고려하지 않도록 명령을 수정하는 방법을 알려주실 수 있나요?

파일에 추가 공간이 있는 경우 내 출력은 다음과 같습니다. 마지막 줄에 다음이 표시됩니다. (D 3 1 Y는 예상되지 않습니다. 추가 spcae 문제를 자르는 방법???

SECURITY_ID     TRADE_ID        COUNTERPARTY_TYPE       SIDE    CUSTOMER_ACC_TYPE       COMMISSION      RELATED_PTY     NON_RESIDENT
1350Z77M0       20200922011102686632    1       1       2       30      N       N
1350Z77M0       20200922011102686632D   3       2                       Y       N
1350Z77S0       20200922011102786632    1       2       1       30      Y       N
1350Z77S0       20200922011102786632D   3       1                       Y       N

        D       3       1                       Y

답변1

awk '
NR==1   {print; next}
/[^[:blank:]]/{print; $2 = $2 "D"; $3 = 3; $4 = ($4==1?2:1); $5 = $6 = " "; $7 = "Y"}
' OFS='\t' valar.csv

관련 정보