Добавить bash таймер в файл - PullRequest
0 голосов
/ 10 января 2020

Я изо всех сил стараюсь предоставить приличный таймер пользователю и добавить значение в журнал. Я не уверен, почему следующее l oop не регистрирует, используя exe c.

Моя идеальная ситуация - добавить >> log.txt в строку эха, но это нарушает визуальный таймер пользователю. Один из обходных путей - написать избыточную строку эха после первой:

Был достигнут некоторый прогресс

  exec > >(tee log.txt) 2>&1
  SECONDS=0
  date1=`date +%s`
  while ! [ $((`date +%s` - $date1)) -gt 10 ]; do
    echo -ne "$(date -u --date @$((`date +%s` - $date1)) +%H:%M:%S)\r"
    #Redundant echo
    echo "$(date -u --date @$((`date +%s` - $date1)) +%H:%M:%S)" >> log.txt
  done

1 Ответ

1 голос
/ 10 января 2020

Вы можете передать вывод на tee -a, который отправит его на стандартный вывод и добавит в log.txt:

echo "$(date -u --date @$((`date +%s` - $date1)) +%H:%M:%S)" | tee -a log.txt
...