删除文件中多余的空间

删除文件中多余的空间

我使用下面的代码复制文件 valar.csv 的条目并在 columns 中输入值。

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 is not expected 如何修剪额外的 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

相关内容