Простой скрипт Bash. Работает только иногда?

Простой скрипт Bash. Работает только иногда?

В одном из моих bash-скриптов, где я использую файл для записи текущего системного времени, я заметил, что правильное время записывается в файл только каждый второй запуск скрипта.

Я создал второй скрипт, чтобы проверить его, и он показал то же самое поведение.

Сценарий:

#!/bin/bash
NOW=$(date +"%F_%H:%M:%S")
wtimestamp="/home/pazau/logfiles/overviewer-timestamp"
timestamp=$(<$wtimestamp)

echo $NOW > $wtimestamp

echo $timestamp

Система — Ubuntu 14.04 x64 и Raspberry Pi model B с raspbian. Поведение одинаковое на обеих системах.

Я что-то упустил?

решение1

Сохраненное время уже верное, вам просто нужно изменить порядок инструкций, чтобы получить то, что вы ожидаете:

#!/bin/bash
NOW=$(date +"%F_%H:%M:%S")
wtimestamp="/home/pazau/logfiles/overviewer-timestamp"
echo $NOW > $wtimestamp
timestamp=$(<$wtimestamp)
echo $timestamp

Связанный контент