<分区>
我正在尝试编辑 CSV 文件的内容,其中第 4 列 ($4
) 的标题为 default_address
。目前,该列是空的,除了标题。如果值为 null(空白),我想使用 AWK 将列的值编辑为 Y
。我可能在这里偏离了基地,但这就是我正在尝试的:
awk -F"," 'BEGIN { OFS = "," }; {if ($4="") $4="Y"; print}' file1.csv > file2.csv
有人能指出我正确的方向吗?
<分区>
我正在尝试编辑 CSV 文件的内容,其中第 4 列 ($4
) 的标题为 default_address
。目前,该列是空的,除了标题。如果值为 null(空白),我想使用 AWK 将列的值编辑为 Y
。我可能在这里偏离了基地,但这就是我正在尝试的:
awk -F"," 'BEGIN { OFS = "," }; {if ($4="") $4="Y"; print}' file1.csv > file2.csv
有人能指出我正确的方向吗?
最佳答案
awk -F"," 'BEGIN { OFS = "," }; {if ($4="") $4="Y"; print}' file1.csv > file2.csv
这会让你到达那里:
awk -F"," 'BEGIN {OFS=","} $4 == "" { $4 = "Y" } {print}' file1.csv > file2.csv
注意 ==
与 =
,并且更喜欢 awk 模式而不是 if
当它做你需要的时候。您的 if
缺少大括号,这可能
一直是你问题的一部分。
关于linux - 如果为空,则编辑列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53638188/