
defaux
(usa Outra)
Enviado em 19/10/2017 - 10:51h
Prezados,
Estou com um problema em um script que altera um arquivo.dat via SED, preciso rodar esse script varias vezes. A primeira rodada funciona perfeitamente, mas na segunda ele não altera o arquivo e não apresenta erro!
O script do SED, deveria pegar o mes e o NP e alterar para Mes +1 e NP -1, depois retira a linha do mês anterior da lista.
Script do SED
mes=$(sed -n '2p' set_encad.dat | cut -c 5-6)
nper=$(sed -n '3p' set_encad.dat | cut -c 5-6)
if [ $mes -lt 10 ];
then
mess=0$[$mes + 1]
else
mess=$[$mes + 1]
fi
if [ $nper -lt 10 ];
then
npers=0$[$nper - 1]
else
npers=$[$nper - 1]
fi
sed -i "2s/$mes/$mess/" set_encad.dat
sed -i "3s/$nper/$npers/" set_encad.dat
sed -i "/^$mes/d" set_encad.dat
Arquivo de Texto
####
MES:11
NP :02
####
mes xxsis1.xxx xxsis2.xxx xxsis3.xxx xxsis4.xxx xxsis5.xxx xxsis2.xxx xxsis3.xxx xxsis4.xxx xxsis5.xxx
11 4381.00 3586.00 540.00 4946.00 16707.00 10119.00 3595.00 2197.00 104.00
12 8181.00 5546.00 1150.00 4869.00 29406.00 8436.00 9529.00 4939.00 118.00
Alguem tem uma luz no fim do tunel?