This page is hosted for free by zzz.com.ua, if you are owner of this page, you can remove this message and gain access to many additional features by upgrading your hosting to PRO or VIP for just 32.50 UAH.

Windows - Пишем в cmd, bat

Не работает? Начинай читать инструкцию.

Как перенаправить результат выполнения команд bat файла, в лог-файл

Обычно  выполнении любого 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

Предлагаю ознакомиться с предложениями моих партнёров