
Em um dos meus scripts bash onde uso um arquivo para gravar a hora atual do sistema, percebi que a hora correta só é gravada no arquivo a cada segunda vez que o script é executado.
Fiz um segundo script para testá-lo e ele mostra o mesmo comportamento.
O roteiro:
#!/bin/bash
NOW=$(date +"%F_%H:%M:%S")
wtimestamp="/home/pazau/logfiles/overviewer-timestamp"
timestamp=$(<$wtimestamp)
echo $NOW > $wtimestamp
echo $timestamp
O sistema é Ubuntu 14.04 x64 e um Raspberry Pi modelo B com raspbian. O comportamento é o mesmo em ambos os sistemas.
Algo que estou perdendo?
Responder1
O tempo armazenado já está correto, basta reordenar as instruções para obter o que espera:
#!/bin/bash
NOW=$(date +"%F_%H:%M:%S")
wtimestamp="/home/pazau/logfiles/overviewer-timestamp"
echo $NOW > $wtimestamp
timestamp=$(<$wtimestamp)
echo $timestamp