Обычно выполнении любого bat файла трудно увидеть результаты его работы на экране по разным причинам. Поэтому лучше записать результаты работы всех команд bat файла в текстовый лог-файл, и потом анализировать работу bat файла по логам.
Перенаправить выполнение команд bat файла в лог-файл просто. Как это можно сделать?
Создайте bat-файл следующего содержания:
@echo off
echo Start %time%
echo Create test.txt
echo test>C:\test.txt
echo Copy Test.txt to Old_test.txt
copy C:\test.txt C:\Old_test.txt
echo Stop %time%
Первая строка отключит вывод самих команд. Таким образом, в лог-файл будут записаны только результаты их выполнения.
Вторая строка запишет в лог-файл время начала работы bat файла.
Третья строка записывает в лог-файл пояснение того, что следующая команда создаст файл test.txt
Четвертой строка (для примера) создает файл test.txt с корне диска С. и впишет в файл C:\test.txt слово test
Пятая строка выводит в лог-файл пояснение, что следующая команда выполняет копирование файла из одного места в другое.
В шестой строке команда скопирует созданный файл C:\test.txt в файл C:\Old_test.txt, т.е. создается копия файла с новым именем.
Седьмая строка содержит команду вывода времени завершения работы bat файла.
Сохраните этот пакетный файл под именем 1.bat
Допустим, что отчет о работе bat файла Вы хотите хранить в отдельной папке и каждый день записывать отчет с новым именем файла. Причем, имя лог-фала лучше иметь в виде даты работы пакетного файла. Чтобы все это реализовать, создадим например, на диске С папку с именем LOG, путь к ней будет выглядеть C:\LOG. Ваш пакетный файл www.bat запускаем такой командой:
www.bat>C:\LOG\%date%.txt
Если в пути есть пробелы, то надо использовать либо кавычки. Если путь к bat-файлу C:\Program Files\1.bat, то в командной строке для запуска bat-файла нужно указать одну из следующих строк:
Как написать Documents and Settings и Program Files в cmd
"C:\Program Files\www.bat">C:\LOG\%date%.txt
C:\Progra~1\www.bat>C:\LOG\%date%.txt
После запуска файла www.bat в папке C:\LOG будет создан новый файл с именем, равным дате запуска bat-файла, например, 19.10.2015.txt и это будет отчет о работе пакетного файла www.bat
Запуск bat-файла, пример которого показан первым вверху страницы, указанной выше командой, создаст лог-файл такого содержания:
Start 20:05:50,40
Create test.txt
Copy Test.txt to Old_test.txt
Скопировано файлов: 1.
Stop 20:05:51,15
Таким образом, для выполнения перенаправления результата работы bat-файла в лог-файл, нужно использовать символ перенаправления >
Синтаксис такй:
Путь\Имя-Файла.bat>Путь\Имя_лог-файла.txt
Если необходимо дополнять один и тот же лог, а не перезаписывать его, то используйте двойной символ перенаправления: >>
Путь\ИмяФайла.bat>>Путь\ИмяЛогФайла.txt
Расширение лог-файла может быть любым. Например: file.log