私は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 ファイルの 1 列目に出力されており、ファイルの 1 列目の最初の 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
プログラムの種類.csv
type,desc,id
EDC,Alb,1
EDG,Gsc,2