Почему некоторые изменения файлов не отображаются в хвосте -f?

Я попытался следить за файлом истории mysql с помощью:

tail -f ~/.mysql_history 

в другом окне я ввел один и тот же пользователь:

 mysql -u someotheruser -p 

и ни одна из следующих команд не показана в моем хвосте. когда я выхожу из консоли mysql, по-прежнему ничего не отображается в tail -f , хотя, когда я cat файл истории, я вижу, что есть новые записи в конце файла

One Solution collect form web for “Почему некоторые изменения файлов не отображаются в хвосте -f?”

Это связано с тем, что mysql полностью воссоздает файл .mysql_history во время его запуска.

Поэтому, когда вы запускаете cat ~/.mysql_history после выполнения mysql , вы ищете совершенно другой файл. Не один tail читает.

Вы можете легко проверить это с помощью простого теста:

  $ ls -li .mysql_history 6685441 -rw------- 1 user user 1570 Sep 15 21:26 .mysql_history $ mysql i_test ... mysql> Bye $ ls -li .mysql_history 6685474 -rw------- 1 user user 1592 Nov 29 20:27 .mysql_history 

как вы видите, inode отличается. Так вот ответ.

  • Периодически получать новые строки из файла, возможно, зависания
  • Как извлечь количество физических процессоров и потоков на ядро? (Нет текста, только номер для использования в качестве входных данных в другом месте)
  • Как извлечь первую и последнюю строки в файле?
  • `tail -f` частично потребляет последнюю строку, не заботится о новых или nul
  • Интерактивный, скрытый живой хвост из нескольких файлов?
  • tail -f не выводит результат в live CD на Ubuntu
  • Греп от конца файла до начала
  • Проводя результат ls в хвост
  • bash syntax - команда обертывания внутри sudo :: tail logs до тех пор, пока строка не будет найдена с таймаутом с использованием Terraform
  • Каков самый простой способ выполнить текст из хвоста в командной строке?
  • Как я могу скопировать n строк после последних двух вхождений строки в файл?
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.