Имя пользователя:
Пароль:
 | Правила  

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

Ответить
Настройки темы
CMD/BAT - [решено] Как записать в txt файл большой кусок текста с помощью bat

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


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

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


Как создать txt файл с большим количеством текста с помощью bat?
Этот текст должен быть с самом batнике

Отправлено: 13:59, 21-12-2012

 

Старожил


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

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


вам все еще нужно решение ?

выдачу произвольного текста заключенного в теле бат файла в выполнением того что было до и того что после этого текста ?



Код: Выделить весь код
cat_embedded_text.cmd
Код: Выделить весь код
CMD doing some stuff
If you want

If you want to


If you want to know
If you want to know PowerShell ?
That is all !@#$%^^&*()_ you want to know ...

CMD doing other stuff
CMD doing some other stuff

пример привести не жалко но боюсь флейма :-)

пример печатающего тела

Код: Выделить весь код
@echo OFF
echo CMD doing some stuff
powershell.exe "&{ $p = $false; (get-content -path $args[0])| foreach-object {if ($_ -match '^REM D4D5BBCD' ){ $p = $false } if ($p) { $_ } ; if ($_ -match '^REM FAE04EC0'){ $p = $true } } }" %~dpnx0
echo CMD doing other stuff
call :AFTER
goto :EOF
REM FAE04EC0
If you want

If you want to


If you want to know
If you want to know PowerShell ?
That is all !@#$%^^&*()_ you want to know ...

REM D4D5BBCD
:AFTER
echo doing some other stuff
goto :EOF

Последний раз редактировалось Serguei Kouzmine, 14-12-2022 в 06:44.


Отправлено: 06:35, 14-12-2022 | #11



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

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


Аватара для V!RTuE

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


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

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


Serguei Kouzmine, тут уже комбинирование с powershell идет. а он не на всех компах может корректно работать как показала практика. Например, на win7x64 home basic msdn это не сработает. интересно решение чисто с помощью cmd/bat.

Отправлено: 13:56, 14-12-2022 | #12


Старожил


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

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


добавьте
Код: Выделить весь код
-executionpolicy bypass
если все таки не работает покажите диагностику

цмд это очень архаичный интерпретатор и
использовать его это примерно как добывать огонь трением
одним куском дерева о другой
https://ru.wikipedia.org/wiki/%D0%97...B3%D0%BD%D1%8F

нужно иметь серезные причины так вот себя ограничивать

Последний раз редактировалось Serguei Kouzmine, 14-12-2022 в 16:33.

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

Отправлено: 16:28, 14-12-2022 | #13


Старожил


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

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


Изображения
Тип файла: png Capture-win7x64.PNG
(33.9 Kb, 19 просмотров)

скриншот

Отправлено: 16:37, 14-12-2022 | #14


Аватара для V!RTuE

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


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

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


Serguei Kouzmine, мне надо не на экран вывести текст, а экспортировать его в файл test.txt, например. Как это сделать?
В коде не хватает кавычек, иначе не работает, если есть пробелы в пути до батника
Код: Выделить весь код
powershell.exe "&{ $p = $false; (get-content -path $args[0])| foreach-object {if ($_ -match '^REM D4D5BBCD' ){ $p = $false } if ($p) { $_ } ; if ($_ -match '^REM FAE04EC0'){ $p = $true } } }" '%~dpnx0'

Отправлено: 21:58, 14-12-2022 | #15


Аватара для DJ Mogarych

fascinating rhythm


Moderator


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

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


Цитата V!RTuE:
на win7x64 home basic msdn »
Ставится Powershell 5.1 и всё прекрасно работает.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 21:59, 14-12-2022 | #16


Аватара для V!RTuE

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


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

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


Цитата DJ Mogarych:
Ставится Powershell 5.1 и всё прекрасно работает. »
Сейчас проверил и там стоит 2.0. Хорошо, когда это личный комп и только на нем запускать надо скрипт. Но нужна максимальная универсальность, чтобы на любом компе, даже старом, всё работало. Поэтому и был выбран cmd/batch.
P.S.: этот код там сработал

Отправлено: 22:12, 14-12-2022 | #17


Старожил


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

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


Цитата V!RTuE:
мне надо не на экран вывести текст, а экспортировать его в файл test.txt, например. Как это сделать »

это сделать просто

Код: Выделить весь код
set DEBUG=true

.\print_embedded_text.cmd dummy.txt
Код: Выделить весь код
CMD doing some stuff
CMD doing other stuff
doing some other stuff
contents of dummy.txt
If you want

If you want to


If you want to know
If you want to know PowerShell ?
That is all !@#$%^^&*()_ you want to know ...

Код: Выделить весь код
print_embedded_text.cmd
Код: Выделить весь код
@echo OFF
echo CMD doing some stuff
REM NOTE: for some reason cannot break command into multiple lines
REM powershell.exe -executionpolicy bypass ^
REM ...
set OUTPUTFILE=%~1
if "%OUTPUTFILE%" == "" set OUTPUTFILE=output.txt

powershell.exe -executionpolicy bypass "&{ $p = $false; (get-content -path $args[0])| foreach-object {if ($_ -match '^REM DATA_END' ){ $p = $false } if ($p) { $_ } ; if ($_ -match '^REM DATA_START'){ $p = $true } } | out-file -encoding ascii -filepath $args[1] }" "%~dpnx0" "%OUTPUTFILE%"
echo CMD doing other stuff
call :AFTER
if /i "%DEBUG%"=="true" echo contents of %OUTPUTFILE%&&type %OUTPUTFILE%
goto :EOF 
REM DATA_START
If you want

If you want to


If you want to know
If you want to know PowerShell ?
That is all !@#$%^^&*()_ you want to know ...

REM DATA_END
:AFTER
echo doing some other stuff
goto :EOF

Отправлено: 18:47, 15-12-2022 | #18



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
AVI файл проигрывается с большой скоростью Marina222 Хочу все знать 10 31-05-2011 18:27
[решено] Как записать большой образ на диск? systeman Хочу все знать 5 08-11-2010 10:56
С помощью чего записать DVD5? SergeyGUG Видео и аудио: обработка и кодирование 1 02-04-2010 15:49
CMD/BAT - [решено] Как с помощью bat-ника записать названия папок в текстовый файл? Nun-Nun Скриптовые языки администрирования Windows 9 23-02-2010 20:15
Как разбить большой кусок текста на несколько частей chem1 Вебмастеру 11 25-05-2008 16:32




 
Переход