Добавить текст в .bat

Я хочу создать журнал каждой операции, обрабатываемой в пакетном файле, и использовать следующее, но безрезультатно. Как его исправить (файл не был создан)?

REM>> C:\"VTS\ADVANCED TOOLS\SYSTEM\LOG\Advanced tools %date%.log"

Ответы

Ответ 1

Вам нужно использовать ECHO. Кроме того, поместите кавычки по всему пути к файлу, если они содержат пробелы.

Еще одно замечание, используйте > для перезаписи файла, если он существует или создается, если он не существует. Используйте >> для добавления к существующему файлу или создания, если он не существует.

Перезаписать файл пустой строкой:

ECHO.>"C:\My folder\Myfile.log"

Добавить пустую строку в файл:

ECHO.>>"C:\My folder\Myfile.log"

Добавить текст в файл:

ECHO Some text>>"C:\My folder\Myfile.log"

Добавить переменную в файл:

ECHO %MY_VARIABLE%>>"C:\My folder\Myfile.log"

Ответ 2

Любая строка, начинающаяся с "REM", рассматривается как комментарий, ничего не выполняется, включая перенаправление.

Кроме того, переменная% date% может содержать символы "/", которые рассматриваются как символы разделителя путей, что приводит к тому, что система не может создать желаемый файл журнала.

Ответ 3

Я не разбираюсь в пакетных сценариях, но могу сказать, что REM означает Remark. Приложение не будет появляться, поскольку оно существенно прокомментировано.

http://technet.microsoft.com/en-us/library/bb490986.aspx

Кроме того, оператор append перенаправляет вывод команды в файл. В опубликованном фрагменте неясно, какой выход следует перенаправить.