아래 코드를 사용하여 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