
addhead | addtail | count | difflines | filter | head | joinlines | linelen | load | ofilter | perline | printloop | replace | run | runloop | snapto | sort | strings | tail | xed | xex | xreplace | Команда: tail Распечатать первые или последние строки файлаСледить за изменениями, и при необходимости фильтровать вывод, заменяя или выделяя текстовые части
ПАРАМЕТРЫ lines=n - вывести последние n строк (по умолчанию 10).
follow или -f - ожидает изменений файла, печатая их бесконечно.
Если файл воссоздан или сжат, перечитывает последние строки. Чтобы выполнить постобработку хвостового вывода,
например с +filter, всегда добавляйте +loop в конце последовательности команд.
nowait - если хвост достигнут несколько раз в цепочке с помощью +loop,
то не ждите изменения размера файла, а запустите пошаговое выполнение цепочки команд
quiet - не рассказывать многословно о прочитанных перезапусках
polltime=n - с -follow, указывает задержку в миллисекундах до
Файл снова проверяется на наличие изменений. По умолчанию 500
altsize - использовать другой метод для определения размера файла (stat вместо поиска).
Может помочь, если метод по умолчанию не может прочитать файл, или для повышения производительности.
verbose - подробно рассказать, что сделано
СМОТРИТЕ ТАКЖЕ
ПРИМЕРЫ
Пример sfk-скрипта с условным выполнением Файл logfilter.txt:
sfk label checklog
+tail -follow logfile.txt
+tee toterm +storetext
+filter -+error: -justrc
+if "rc>0" call myalert
+gettext +filter -+alldone: -justrc
+if "rc>0" stop
+loop +end
sfk label myalert
+then run -yes "myalert.bat" +end
Будет запускать myalert.bat всякий раз, когда в файле logfile.txt появляются ошибки. Скрипт останавливается, как только в журнале появляется «alldone». Чтобы разрешить двойную фильтрацию текста цепочки, его необходимо сохранить до первого фильтра, а затем восстановить. Примеры скрипта Если вы хотите одновременно отслеживать и фильтровать несколько фраз, команду может стать трудно читать и редактировать.
В качестве альтернативы вы можете поместить его в пакетный встроенный сценарий sfk.
@echo off
sfk script filtlog.bat -from begin
goto xend
sfk label begin
+tail -f log.txt
+filter
-high red error:*
-high yellow warning:*
-high blue debug:*
+loop
:xend
Затем введите " СМОТРИТЕ ТАКЖЕ |
![]() |