Постоянная запись вывода терминала в текстовый файл

Я запускаю небольшое приложение pi-i cli в терминале. Он бесконечно петлит и выводит текст на терминал. Я хочу вывести текст в файл, и я могу сделать это с помощью следующей команды python [my cli app] >> log.txt , но мне нужно сначала разбить цикл, прежде чем файл будет закрыт и эффективно сохранен. Есть ли способ прочитать последнее содержимое из текстового файла, пока цикл продолжает работать в фоновом режиме?

ТАК БЫСТРО:

 ~ $ [INFINITE LOOP] >> log.txt 

то пока он работает вечно, я хочу получить доступ к log.txt . На данный момент он только сохраняет вывод терминала в файл после остановки команды с помощью Ctrl + C.

Надеюсь, это объяснит это

One Solution collect form web for “Постоянная запись вывода терминала в текстовый файл”

simulation.py:

(вывод 10 строк каждую секунду)

 #!/usr/bin/env python import time i=0 while True: print("{} what up {}".format(i,i%10)) if i%10==9: time.sleep(1) i+=1 

В одном терминале:

 $ stdbuf -oL python simulation.py >> log.txt 

В другом:

 $ tail -f log.txt #10 new lines every second 
  • как удалить последние две строки с разделителями из каждой строки в большом файле
  • сохранить вывод скрипта python в текстовый файл
  • Должен ли я закончить мои текстовые / скриптовые файлы с помощью новой строки?
  • Текстовый интерфейс пользователя
  • Как пропустить файл в sed, если он содержит регулярное выражение?
  • Как исправить xdg-mime для текстовых форматов
  • Как удалить все вхождения списка слов из текстового файла?
  • Как сравнить несколько столбцов одного файла с одним столбцом другого и отображать совпадения из второго файла?
  • Как я могу превратить уродливый вывод в красивую и полезную информацию?
  • Добавить значение в поле для заданного условия в определенном столбце файла
  • Дублировать строки и сделать их уникальными?
  • Как преобразовать файлы txt UTF-8 во все прописные буквы в bash?
  • Linux и Unix - лучшая ОС в мире.