Eu tenho um arquivo com os seguintes valores. Estou tentando ler o arquivo e adicionar 1096 ao último valor e gerar a saída na tela. Meu arquivo original se parece com isso.
agile_prod_toolkit,30
alsv2_prod_app,30
alsv2_qa_app,15
Minha saída esperada deve ser a seguinte. o terceiro valor é o segundo valor + 1096
agile_prod_toolkit,30,1126
alsv2_prod_app,30,1126
alsv2_qa_app,15,1111
O que eu tentei é
while IFS="," read line ret;do
value=$ret+1095
print $line,$ret,$value
done < final_original
Mas isso não parece funcionar. alguém pode me dizer o que estou fazendo de errado aqui?
A saída que estou obtendo aqui quando executo o comando acima é assim
agile_prod_toolkit,30,30+1095
alsv2_prod_app,30,30+1095
alsv2_qa_app,15,15+1095
value=$ret+1095
não é uma atribuição aritmética e o shell bash não temprint
(talvez você quis dizerprintf
?).Você poderia fazer
ou com a sintaxe aritmética mais moderna e printf
Mas, na verdade, os shells não se destinam ao processamento de texto/aritmético - considere usar algo como
awk
oumiller
em vez disso: