我需要在 csv 文件末尾添加一列Interface_Utilization-95pctile_Report-en-us_2017-01-09T030009673Z.csv。
Node_Name,Interface_Name,Interface_Speed,Utilization_In,Utilization_Out
内容输出.csv
Node_Name,Interface_Name,Interface_Speed,Utilization_In,Utilization_Out,timestamp
这时间戳列应包含来自存储在中的变量的数据$格式化日期。
到目前为止我已经尝试过:
ORIG_FILE="Interface_Utilization-95pctile_Report-en-us_2017-01-09T030009673Z.csv"
NEW_FILE="Output.csv"
awk -F"," 'BEGIN { OFS = "," } {$6="2012-02-29 16:13:00"; print}' \
Interface_Utilization-95pctile_Report-en-us_2017-01-09T030009673Z.csv > Output.csv
awk '{ printf("%s,2012-02-29 16:13:00\n", $6); }' \
Interface_Utilization-95pctile_Report-en-us_2017-01-09T030009673Z.csv > Output.csv
awk -F, -v OFS=, '{k=$3; $3="\"new text\"";}1' \
Interface_Utilization-95pctile_Report-en-us_2017-01-09T030009673Z.csv
paste -d',' <(cut -d',' -f-2 file) \
column.Interface_Utilization-95pctile_Report-en-us_2017-01-09T030009673Z.csv \
<(cut -d',' -f3- file)
答案1
那么,实际上您想将 a,
和双引号内容附加$formatted_date
到每行的末尾吗?你可以这样做
sed "s/$/,\"$formatted_date\"/" "$ORIG_FILE" > "$NEW_FILE"
答案2
这应该可以做到,包括标题:
{ echo `head -1 $ORIG_FILE`",timestamp" ; tail -n +2 $ORIG_FILE | \
while read x ; do echo "$x,$formatted_date" ; done ; } > $NEW_FILE