我有一个 CSV 文件列表,我必须打印一个变量名(动态;它会改变),到 CSV 文件中的最后一列。
这是代码:
addProgramtypeID () {
for csv in $1
do
file_name="$csv"
echo $file_name
f=`echo $file_name | cut -d '_' -f3 | cut -d '.' -f1`
echo $f
k=`grep -i $f Program_type.csv | cut -d ',' -f3`
echo $k
awk '{ print $0 "," "'"$k"'" }' "$csv" > tempfile && mv tempfile "$csv"
done
}
addProgramtypeID "T_H_EDCGO.csv"
到目前为止,变量值K
正在打印在 CSV 文件的第一列,它也正在删除文件中第一列的前 2 个字符。我的要求是变量值应始终作为 CSV 文件中的最后一列。
输入 :
TX_ID,SEQUENCE,PROGRAM_ID,CA_ID,C_ID
123,3,334,234,3
545,2,444,456,5
如果假设 $k=2 输出:
TX_ID,SEQUENCE,PROGRAM_ID,CA_ID,C_ID,2
123,3,334,234,3,2
545,2,444,456,5,2
Program_type.csv
type,desc,id
EDC,Alb,1
EDG,Gsc,2