Читайте также:
|
|
Часто, при выполнении сложного bat файла в автоматическом режиме проверить результаты его работы бывает затруднительно по многим причинам. Поэтому проще записывать результаты работы команд batch файла в текстовый файл (лог-файл). а потом анализировать правильность работы 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%
Первая строка отключает вывод самих команд. Таким образом, в лог-файл будут записаны только результаты их выполнения.
Вторая строка записывает в лог-файл время начала работы пакетного файла.
Третья строка записывает в лог-файл пояснение того, что следующая команда создаст файл test.txt
Команда из четвертой строки создает файл test.txt с корне диска С. Файл создается для примера. Эта команда записывает в файл C:\test.txt слово test
Пятая строка выводит в лог-файл пояснение, что следующая команда выполняет копирование файла из одного места в другое.
Команда в шестой строке копирует созданный файл C:\test.txt в файл C:\Old_test.txt, т.е. создается копия файла под новым именем.
Последняя, седьмая строка содержит команду вывода времени завершения работы пакетного файла. В сумме с записью в лог-файл времени начала работы пакетного файла эти два значения времени дают возможность оценить время работы пакетного файла.
Сохраните этот пакетный файл под именем, например, 1.bat
Предположим, что отчет о работе пакетного файла мы бы хотели хранить в отдельной папке и каждый день записывать отчет с новым именем файла, чтобы была возможность в любой из дней обратиться к логам за предыдущие дни. Причем, имя лог-фала хотелось бы иметь в виде даты работы пакетного файла. Чтобы все это реализовать создадим на диске С (например) папку с именем LOG, т.е. полный путь к ней будет выглядеть C:\LOG. Созданный пакетный файл 1.bat будем запускать следующей командой:
1.bat>C:\LOG\%date~-10%.txt
Если пакетный файл будет запускаться из Планировщика, то нужно указать полный путь с bat-файлу. Помните, что если в пути есть пробелы, то надо использовать либо кавычки, либо формат 8.3. Т.е., если путь к bat-файлу C:\Program Files\1.bat, например, то в командной строке Планировщика для запуска bat-файла нужно указать одну из следующих строк:
"C:\Program Files\1.bat">C:\LOG\%date~-10%.txt
C:\Progra~1\1.bat>C:\LOG\%date~-10%.txt
После запуска файла 1.bat в папке C:\LOG будет создан файл с именем, равным дате запуска bat-файла, например, 13.01.2004.txt Это и будет отчет о работе пакетного файла 1.bat
Запуск bat-файла, пример которого показан в первом листинге вверху страницы, указанной выше командой, приведет к созданию лог-файла такого содержания:
Start 19:03:27,20
Create test.txt
Copy Test.txt to Old_test.txt
Скопировано файлов: 1.
Stop 19:03:27,21
Таким образом, для выполнения перенаправления результатов работы bat-файла в лог-файл нужно использовать символ перенаправления > Синтаксис таков:
Путь\ИмяФайла.bat>Путь\ИмяЛогФайла.txt
Расширение лог-файла может быть любым. При желании, отчет о выполнении пакетного задания можно оформить даже в виде страницы html (соответствующие теги могут быть выведены в лог-файл так, как выводились комментарии в примере 1.bat) и скопировать его на корпоративный сервер.
Дата добавления: 2015-09-04; просмотров: 55 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Как создать папку из bat файла | | | Как автоматически ответить на запрос о подтверждении |