3

Итак, у меня есть этот пакетный файл, который запускается каждое утро в 7 часов утра и выполняет некоторую работу в командной строке Windows.

То, что мне нужно, чтобы этот пакет также делал, - это сохранить результаты работы с приглашением cmd в текстовом файле, чтобы я мог просмотреть его состояние. Если партия терпит неудачу, это не критично, но мне нужно знать об этом.

Если бы я мог распечатать содержимое приглашения cmd в текстовый файл или отправить мне по электронной почте результаты запуска, это было бы здорово.

3 ответа3

8

Вам просто нужно добавить это в конец того, что запускает командный файл: > "c:\yourFile.txt"

(или >> "c:\yourFile.txt" если вы хотите, чтобы результаты добавлялись в файл без перезаписи)

например: c:\yourBatchFile.bat >> c:\yourLogFile.txt

7

К вашему сведению ... просто использование «больше, чем» в других ответах не отразит вывод ошибок, только стандартный вывод ... Таким образом, любые ошибки по-прежнему будут отображаться в командной строке, а не в файле журнала, и вы все равно не будете уведомлены о каких-либо сбоях.

И для stdout, и для stderr вам нужен следующий синтаксис:

[batchFilePath] > [logFilePath] 2>&1

2

Попробуйте перенаправить вывод, поставив «>» и имя файла после запланированной команды, как в:

C:\MyBatchFile.bat> output.txt

Ввод двух «>», как в «>>», будет добавлять вместо перезаписи.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .