Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Содержимое консоли скопировать в файл

Ответить
Настройки темы
CMD/BAT - [решено] Содержимое консоли скопировать в файл

Новый участник


Сообщения: 30
Благодарности: 1

Профиль | Отправить PM | Цитировать


Изменения
Автор: dassen
Дата: 25-04-2018
Некий пакетный файл заканчивает свою многочасовую работу командой шатдаун. Нужно чтобы до ее выполнения весь текст из окна консоли был скопирован (добавлен) в указанный .txt. Т.е. не нужно потоки вывода команд перенаправлять в .txt - пусть окно консоли заполняется как обычно, а в завершении его текст должен быть скопирован в .txt.

Отправлено: 21:55, 25-04-2018

 

Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


Цитата dassen:
Некий пакетный файл »
Цитата dassen:
до ее выполнения »
Цитата dassen:
потоки вывода команд »
вы не задумывались что мы должны видеть то с чем надо работать и чьи команды перенаправлять в файл.

Отправлено: 22:23, 25-04-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 30
Благодарности: 1

Профиль | Отправить PM | Цитировать


alpap,
Как раз команды перенаправлять в файл и не нужно.

Допустим, выполняется пакетный файл
Код: Выделить весь код
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr1.7z .\Fldr1\* -mx9 -mqs
@echo.
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr2.7z .\Fldr2\* -mx9 -m0=LZMA2:d128m:fb273 -mqs
@echo.
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr3.7z .\Fldr3\* -mx9 -m0=LZMA2:d128m:fb273 -mqs -myx
@echo.
:: здесь нужна желаемая команда
@shutdown -s -t 60
@pause

Перед командой shutdown в окне консоли успел отобразиться текст
23.16.15

E:\>7z a Fldr1.7z .\Fldr1\* -mx9 -mqs

7-Zip 18.03 beta (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-03-04

Scanning the drive:
3 folders, 168 files, 18378039 bytes (18 MiB)

Creating archive: Fldr1.7z

Add new data to archive: 3 folders, 168 files, 18378039 bytes (18 MiB)


Files read from disk: 168
Archive size: 6711088 bytes (6554 KiB)
Everything is Ok

23.16.22

E:\>7z a Fldr2.7z .\Fldr2\* -mx9 -m0=LZMA2:d128m:fb273 -mqs

7-Zip 18.03 beta (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-03-04

Scanning the drive:
3 folders, 168 files, 18378039 bytes (18 MiB)

Creating archive: Fldr2.7z

Add new data to archive: 3 folders, 168 files, 18378039 bytes (18 MiB)


Files read from disk: 168
Archive size: 6697529 bytes (6541 KiB)
Everything is Ok

23.16.30

E:\>7z a Fldr3.7z .\Fldr3\* -mx9 -m0=LZMA2:d128m:fb273 -mqs -myx

7-Zip 18.03 beta (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2018-03-04

Scanning the drive:
3 folders, 168 files, 18378039 bytes (18 MiB)

Creating archive: Fldr3.7z

Add new data to archive: 3 folders, 168 files, 18378039 bytes (18 MiB)


Files read from disk: 168
Archive size: 6536707 bytes (6384 KiB)
Everything is Ok

Именно этот фрагмент (просто текст!) и хотелось бы скопировать в .txt.

Отправлено: 00:06, 26-04-2018 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


dassen, идёте на GnuWin32, устанавливаете и пользуете из этого комплекта утилиту tee.exe в виде:
Код: Выделить весь код
@echo off

set sOutputFile=C:\Мои проекты\0152\Result.txt

echo %time:~0,2%.%time:~3,2%.%time:~6,2%|tee.exe --append "%sOutputFile%"
7z a Fldr1.7z .\Fldr1\* -mx9 -mqs|tee.exe --append "%sOutputFile%"
echo.|tee.exe --append "%sOutputFile%"
Это сообщение посчитали полезным следующие участники:

Отправлено: 01:05, 26-04-2018 | #4


Новый участник


Сообщения: 30
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska, это то же самое, что и запись данных на выходе команды вместо окна консоли в файл, с той лишь разницей, что соответствующая запись появляется также и в окне консоли.

Достаточно сравнить результирующие текстовые файлы
В более компактном представлении имеем:
Код: Выделить весь код
(
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr1.7z .\Fldr1\* -mx9 -mqs
@echo.
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr2.7z .\Fldr2\* -mx9 -m0=LZMA2:d128m:fb273 -mqs
@echo.
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr3.7z .\Fldr3\* -mx9 -m0=LZMA2:d128m:fb273 -mqs -myx
@echo.
)|tee -a tee.txt
Код: Выделить весь код
(
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr1.7z .\Fldr1\* -mx9 -mqs
@echo.
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr2.7z .\Fldr2\* -mx9 -m0=LZMA2:d128m:fb273 -mqs
@echo.
@echo %time:~0,2%.%time:~3,2%.%time:~6,2%
7z a Fldr3.7z .\Fldr3\* -mx9 -m0=LZMA2:d128m:fb273 -mqs -myx
@echo.
)>redirection.txt
tee.txt и redirection.txt будут идентичны.


А хотелось бы
Цитата dassen:
Именно этот фрагмент (просто текст!) и хотелось бы скопировать в .txt. »

Отправлено: 06:22, 26-04-2018 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата dassen:
Iska, это то же самое, что и запись данных на выходе команды вместо окна консоли в файл, с той лишь разницей, что соответствующая запись появляется также и в окне консоли. »
Именно так. И это решает поставленную задачу. Целиком и полностью. Специально предназначенной для того утилитой.

Цитата dassen:
А хотелось бы »
Чисто технически это возможно. Если текст не вышел за пределы буфера экрана (именно буфера, а не окна). Но зачем? Я бы ещё понял, если б Вам требовалось приручить некую утилиту, которая напрямую пишет в окно, а не использует стандартные потоки вывода и ошибок. Но в данном случае необходимости в таких извращениях я совсем не вижу.

Отправлено: 08:01, 26-04-2018 | #6


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата dassen:
Перед командой shutdown в окне консоли успел отобразиться текст
Именно этот фрагмент (просто текст!) и хотелось бы скопировать в .txt. »
у этого "перед" должно быть начало, можете однозначно сформулировать?

Отправлено: 10:48, 26-04-2018 | #7


Новый участник


Сообщения: 30
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska, спасибо. Согласен. Уже использую.
Busla, формулирую: весь текст из окна консоли от первой строки до команды shutdown.
Цитата dassen:
Перед командой shutdown в окне консоли успел отобразиться текст »

Последний раз редактировалось dassen, 26-04-2018 в 22:51.


Отправлено: 21:31, 26-04-2018 | #8


Пользователь


Сообщения: 87
Благодарности: 4

Профиль | Отправить PM | Цитировать


Цитата Iska:
идёте на GnuWin32, устанавливаете и пользуете из этого комплекта утилиту tee.exe »
Искал даже поиском по странице. Всё есть, а tee нет.

Отправлено: 11:33, 01-05-2018 | #9


Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


напрямую:
Файл 152342

Последний раз редактировалось alpap, 21-06-2018 в 14:15.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:06, 01-05-2018 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Содержимое консоли скопировать в файл

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Скопировать папку №1 и её содержимое несколько раз по порядковым номерам Сергей Красиков Скриптовые языки администрирования Windows 2 04-10-2015 23:11
Любой язык - [решено] Скопировать содержимое одного тхт файла столько раз, сколько строк в другом Alexander_88 Скриптовые языки администрирования Windows 4 11-06-2015 11:10
CMD/BAT - [решено] Как скопировать содержимое txt файлов всех подкаталогов в один файл dezertic Скриптовые языки администрирования Windows 3 20-10-2009 12:47
Файл подкачки и его содержимое Andy33 Хочу все знать 13 11-05-2009 01:07
как посмотреть/скопировать содержимое бсд'шного диска на windows машине? Solo the human Общий по FreeBSD 6 10-08-2005 11:00




 
Переход