Як почати формувати файл, який ще не створений


12

Я використовую tailдля контролю за виконанням завдань, які, як я знаю, записуватиму їх прогрес на диск. Майже завжди я знаю, який файл вони створять, перш ніж розпочати роботу (завдання надсилаються планувальником на суперкомп'ютер)

Чи є спосіб до tailцих файлів перед їх створенням? Я хотів би це зробити, уникаючи перегонів та / або роблячи припущення про те, як або коли завдання записують на диск.

Відповіді:


13

Використовуйте -Fпрапор до хвоста (якщо ви маєте tailGNU coreutils):

tail -F file-that-does-not-exist

Від man tail:

   -F     same as --follow=name --retry
   --retry
          keep trying to open a file even when it is or becomes inaccessi
          ble; useful when following by name, i.e., with --follow=name
   -f, --follow[={name|descriptor}]
          output appended data as the file grows; -f, --follow, and --fol
          low=descriptor are equivalent

3

Якщо у вашої tailреалізації немає --retryможливості, ви, ймовірно, можете просто обдурити і створити файл самостійно:

$ touch file && tail-f file

Залежно від ваших вимог щодо прав власності та дозволів, які можуть бути достатніми.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.