Я предложил бы установить что-то как GNU Utilities для Win32. Это имеет большинство фаворитов, включая хвост.
Попробуйте Windows Services за UNIX. Обеспечивает оболочки, awk, sed, и т.д. а также хвост.
Если Вы хотите использовать порты Win32 некоторых утилит Unix (вместо того, чтобы установить Cygwin), я рекомендую утилиты GNU для Win32.
Более легкий вес, чем Cygwin и более портативный.
Если Вы не хотите устанавливать что-нибудь вообще, что можно "создать собственный" пакетный файл, который делает задание от стандартных команд Windows. Вот некоторые указатели относительно того, как сделать это.
1) Используя [1 110] находят/c/v "" yourinput.file, получают количество строк в Вашем входном файле. Вывод - что-то как:
---------- T.TXT: 15
2) Используя [1 111] для/f, проанализируйте этот вывод для получения номера 15.
3) Используя [1 112]/a набора, вычислите количество главных строк, которое должно быть пропущено
4) Используя [1 113] для/f "skip=n", пропускают главные строки и повторяют/обрабатывают строки хвоста.
, Если я нахожу время, я создам такой пакетный файл и отправлю его назад здесь.
tail.bat
REM tail.bat
REM
REM Usage: tail.bat <file> <number-of-lines>
REM
REM Examples: tail.bat myfile.txt 10
REM tail.bat "C:\My File\With\Spaces.txt" 10
@ECHO OFF
for /f "tokens=2-3 delims=:" %%f in ('find /c /v "" %1') do (
for %%F in (%%f %%g) do set nbLines=%%F )
set /a nbSkippedLines=%nbLines%-%2
for /f "usebackq skip=%nbSkippedLines% delims=" %%d in (%1) do echo %%d
Я использовал Хвост Для Windows . Конечно, не столь изящный как использование
tail, но затем, Вы используете Windows.;)
Существует множество опций, однако у всех них есть дефекты с большим количеством расширенных функций.
Инструменты Windows Server 2003 обеспечивают простой хвост, который может быть загружен Инструментами Набора Ресурса . Это слишком ограничено во многих отношениях (блокировки сопровождаемый файл, испытывает недостаток во многих опциях как - pid), однако сделает для основной задачи отслеживания файла.
хвост GnuWin32 является багги ( О± ОІ Оі ) - вещи как-f просто не работают.
хвост UnxUtils кажется лучше (-f работы, но - pid кажется не,-n, но не - lines=n сбои с-f), но, кажется, мертвый проект.
Cygwin является большими ужасными шумами, мог, возможно, просто использовать DLL и coreutils пакет - но все еще имеет проблемы как - pid, не работающий с собственными процессами win32.
Я всегда использовал Baretail для конца в Windows. Это свободно и довольно хорошо.
Редактирование: поскольку лучшее описание Baretail видит этот вопрос
firstpart, secondpart = string[::2], string[1::2]
начиная с вопроса didn' t определяют, что части должны были быть непрерывными.
– Duncan
25 January 2011 в 19:16
При использовании PowerShell затем, это работает:
Get-Content filenamehere -Wait -Tail 30
комментарий Добавляющего Stefan снизу, таким образом, люди не пропускают его
, PowerShell 3 представляет - параметр Хвоста для включения только последних x строк
Я предпочитаю TailMe из-за возможности одновременного просмотра нескольких файлов журнала в одном окне: http://www.dschensky.de/Software/Staff/tailme_en.htm
Тип DOS
работает как * nux cat
, хотя, как и cat
, он сбрасывает весь файл, так что на самом деле это не так tail
, но в крайнем случае он будет доступен без загрузки / установки настоящей замены tail
.
Загрузить хвостовую команду, часть Windows Инструменты набора ресурсов Server 2003
от самой Microsoft .
Another option would be to install MSYS (which is more leightweight than Cygwin).
DOS не имеет хвостовой команды; вы можете скачать двоичный файл Windows для GNU tail и других инструментов GNU здесь .
With Windows PowerShell you can use:
Get-Content <file> -Wait
Любой, кто интересуется хвостом CMD DOS с использованием пакетных команд (см. Ниже).
Это не префект, и строки иногда повторяются.
Использование: tail. летучая мышь -d tail.bat -f -f
@echo off
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
rem tail.bat -d <lines> <file>
rem tail.bat -f <file>
rem ****** MAIN ******
IF "%1"=="-d" GOTO displayfile
IF "%1"=="-f" GOTO followfile
GOTO end
rem ************
rem Show Last n lines of file
rem ************
:displayfile
SET skiplines=%2
SET sourcefile=%3
rem *** Get the current line count of file ***
FOR /F "usebackq tokens=3,3 delims= " %%l IN (`find /c /v "" %sourcefile%`) DO (call SET find_lc=%%l)
rem *** Calculate the lines to skip
SET /A skiplines=%find_lc%-!skiplines!
rem *** Display to screen line needed
more +%skiplines% %sourcefile%
GOTO end
rem ************
rem Show Last n lines of file & follow output
rem ************
:followfile
SET skiplines=0
SET findend_lc=0
SET sourcefile=%2
:followloop
rem *** Get the current line count of file ***
FOR /F "usebackq tokens=3,3 delims= " %%l IN (`find /c /v "" %sourcefile%`) DO (call SET find_lc=%%l)
FOR /F "usebackq tokens=3,3 delims= " %%l IN (`find /c /v "" %sourcefile%`) DO (call SET findend_lc=%%l)
rem *** Calculate the lines to skip
SET /A skiplines=%findend_lc%-%find_lc%
SET /A skiplines=%find_lc%-%skiplines%
rem *** Display to screen line when file updated
more +%skiplines% %sourcefile%
goto followloop
:end
Установить MKS Toolkit ... Чтобы вы могли запускать все команды Unix в Windows.
Команда:
tail -f <file-name>