我有以下脚本来向 CSV 文件添加一些附加值。
文件中的第一行是标题,因此显然我们想保留它们,但我的脚本完全跳过它们。
简而言之,我想将所有内容复制到最终文件,但仅在第一行之后进行修改。
gawk -v exists="false" -v app_name="app_name" -v find_date=$(date +%F) -F"[ \t]+" 'BEGIN {OFS = "\t"} NR>1 {$12=exists;$13=app_name;$14=find_date; print}' output.csv > output_final.csv
答案1
该脚本会跳过第一行,因为您告诉它仅适用于 where 行NR>1
。您需要指定何时做什么NR==1
。
gawk -v exists="false" -v app_name="app_name" -v find_date=$(date +%F) -F"[ \t]+" '
BEGIN {OFS = "\t"}
NR==1 {print}
NR>1 {$12=exists;$13=app_name;$14=find_date; print}
' output.csv > output_final.csv