CMD/BAT - [решено] Создание текстового файла с набором символов

Аватара пользователя
4zz

CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение 4zz »

Уважаемые знатоки!

Помогите создать батник при запуске которого создавался бы текстовый файл с указанным количеством произвольных символов (буквы, цифры, знаки).

Варианты - либо я вношу количество символов в батник (допустим 592283), либо вопрос при запуске - "введите количество символов".

Спасибо заранее!))
Аватара пользователя
alpap

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение alpap »

Код:

Код: Выделить всё

>"Текстовый файл.txt" echo Произвольное количество каких-то там [1,2,5,$,#], знаков

не все знаки удастся вывести таким образом


Цитата 4zz:



вопрос при запуске - "введите количество символов"
CMD/BAT - [решено] Создание текстового файла с набором символов




set /p /?
Аватара пользователя
megaloman

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение megaloman »

4zz,
Цитата alpap:



не все знаки удастся вывести таким образом
CMD/BAT - [решено] Создание текстового файла с набором символов




Плюс
Цитата 4zz:



количество символов в батник (допустим 592283),
CMD/BAT - [решено] Создание текстового файла с набором символов




такую длинную строку в CMD обработать не удастся.

Поэтому, сакраментальный вопрос: зачем это нужно и почему CMD, а не, допустим, vbs?

Какие символы при этом допустимы?
Аватара пользователя
megaloman

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение megaloman »

megaloman, не силён в написании скриптов, но рандомный вариант может быть использован, отключив неиспользуемые символы.

Только я не представляю зачем это нужно Изображение

Очередной
BALON
?
Аватара пользователя
megaloman

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение megaloman »

4zz,


Вот вариант с клавиатурным набором знаков. Некоторые знаки валили скрипт, я их перечислил и не употребляю.

Не берусь судить, может еще какая-то зюкочка нагадит.

[spoiler]Код:
[/spoiler]

Код: Выделить всё

@Echo Off
cls
	Set "Out=Z:\Box_Out\полная фигня.txt"
	Set /A Max=8765
rem не использовать ^%&|"()'=
	Set "Symb=~!#$*_+1234567890-QWERTYUIOP{}qwertyuiop[]ASDFGHJKL:asdfghjkl;\ZXCVBNM?zxcvbnm,./ Ё№ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮёйцукенгшщзхъфывапролджэячсмитьбю"
	Set /A NS=-1 &FOR /L %%i IN (0,1,255) DO (Call :Substr %%i "S" &&Set /A NS+=1)
	Set "Str="
	Set /A N=0
	Set /A M=0
	Set /A Quant=4000
	2>nul Del "%Out%"
	:Begin
		Set /A N+=1
		Set /A M+=1
		Set /A K=(%NS%+1)*%Random%/32768
		Call :Substr %K% "S"
		Set "Str=%Str%%S%"
		If %N% EQU %Quant% (
			Echo DownLoad %M%
			>"%Out%"
			Set "Str="
			Set "S="
			Set /A N=0
		)
	If %M% NEQ %Max% GoTo :Begin
	If %N% NEQ 0 >"%Out%")
Pause
GoTo :Eof
:Substr
	Call Set "@S=%%Symb:~%1,1%%"
	Set "%~2=%@S%"
	If "%@S%"=="" Exit /B 1
Exit /B 0





Длина файла скриптом не ограничивается, весь вопрос - а сколько времени займёт, допустим, генерирование и запись строки из нескольких сот тысяч символов.
Аватара пользователя
yurfed

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение yurfed »

megaloman, не силён в написании скриптов, но рандомный вариант может быть использован, отключив неиспользуемые символы.

Только я не представляю зачем это нужно Изображение

Очередной
BALON
?
Аватара пользователя
megaloman

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение megaloman »

4zz,


Вот вариант с клавиатурным набором знаков. Некоторые знаки валили скрипт, я их перечислил и не употребляю.

Не берусь судить, может еще какая-то зюкочка нагадит.

[spoiler]Код:
[/spoiler]

Код: Выделить всё

@Echo Off
cls
	Set "Out=Z:\Box_Out\полная фигня.txt"
	Set /A Max=8765
rem не использовать ^%&|"()'=
	Set "Symb=~!#$*_+1234567890-QWERTYUIOP{}qwertyuiop[]ASDFGHJKL:asdfghjkl;\ZXCVBNM?zxcvbnm,./ Ё№ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮёйцукенгшщзхъфывапролджэячсмитьбю"
	Set /A NS=-1 &FOR /L %%i IN (0,1,255) DO (Call :Substr %%i "S" &&Set /A NS+=1)
	Set "Str="
	Set /A N=0
	Set /A M=0
	Set /A Quant=4000
	2>nul Del "%Out%"
	:Begin
		Set /A N+=1
		Set /A M+=1
		Set /A K=(%NS%+1)*%Random%/32768
		Call :Substr %K% "S"
		Set "Str=%Str%%S%"
		If %N% EQU %Quant% (
			Echo DownLoad %M%
			>"%Out%"
			Set "Str="
			Set "S="
			Set /A N=0
		)
	If %M% NEQ %Max% GoTo :Begin
	If %N% NEQ 0 >"%Out%")
Pause
GoTo :Eof
:Substr
	Call Set "@S=%%Symb:~%1,1%%"
	Set "%~2=%@S%"
	If "%@S%"=="" Exit /B 1
Exit /B 0





Длина файла скриптом не ограничивается, весь вопрос - а сколько времени займёт, допустим, генерирование и запись строки из нескольких сот тысяч символов.
Аватара пользователя
4zz

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение 4zz »

megaloman,

Спасибо!

Все работает!))

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

Изображение
Аватара пользователя
4zz

Re: CMD/BAT - [решено] Создание текстового файла с набором символов

Сообщение 4zz »

4zz, а может Вы подумаете про переход на WSH/PoSH вместо пакетных файлов?
Ответить

Вернуться в «Скриптовые языки администрирования Windows»