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

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

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

Ветеран


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

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


Добрый день , я опять за помощью к умным людям.

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

К примеру, у меня есть 1.bat(который нужно написать), 2.bat и 3.txt


Я запускаю 1.bat. Он проверяет количество строк в файле 3.txt, делит его на число, которое я укажу, и результатом (получится целое число) заменит число в файле 2.bat. В файле 3.txt всегда будет лишняя пустая строка в конце, т.е. из количества строк необходимо отминусовать 1 и потом только разделить на число, которое я укажу.

файл 2.bat (в котором надо заменить) содержит следующий текст
Код: Выделить весь код
@(for /l %%i in (1 1 3) do @more<"in.txt")>.tmp& move .tmp "out.txt">nul
Число 3 (которое выделено жирным) в данном случае необходимо заменить, на результат, это число не всегда будет 3, оно может быть каким угодно, известно только то, что это цифра

Отправлено: 13:31, 19-08-2014

 

Ветеран


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

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


Цитата Alexander_88:
и результатом (получится целое число) заменит число в файле 2.bat. »
А вот делать сие не след. Нужно использовать в «2.bat» параметр. Т.е.:
Код: Выделить весь код
@echo off

(for /l %%i in (1 1 %~1) do @more<"in.txt")>.tmp& move .tmp "out.txt">nul
Вызывать же пакетный файл с указанием фактического значения, например:
Код: Выделить весь код
call 2.bat "3"
Цитата Alexander_88:
Можно ли из txt файла вычислить количество строк, разделить это количество на число, которое я укажу, »
Можно. Как будете указывать?
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:02, 19-08-2014 | #2



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

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


Ветеран


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

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


указывать буду числа 1, 2, 14 и т.д, они будут небольшие , не больше 20

Отправлено: 14:15, 19-08-2014 | #3


Ветеран


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

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


Говоря «Как будете указывать?» я имел в виду: присвоением «set Var=XX» в самом пакетном файле, , «set /p Var=Input value» — ручным вводом, параметром пакетного файла, вводом из файла. Как?

Отправлено: 16:22, 19-08-2014 | #4


Ветеран


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

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


Полностью согласен с коллегой Iska.


"1.bat":

Код: Выделить весь код
@echo off

:: Заданное число:
set n=5

for /f %%a in ('"find /c /v ""<"3.txt""') do (
 for /f %%b in ('set /a %%a/%n%') do (
  call "2.bat" "%%b"
  )
 )

exit /b
.


"2.bat":

Код: Выделить весь код
:: Для Вашего случая упростил код:
@(for /l %%i in (1 1 %~1) do @more)<"in.txt">"out.txt"& exit /b
.
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:23, 19-08-2014 | #5


Ветеран


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

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


Проверил, то что нужно, спасибо, опять меня выручили

Отправлено: 18:23, 19-08-2014 | #6



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - замена в тексте одних символов на другие! Terry_0 Программирование и базы данных 6 17-02-2014 08:58
замена в тексте одних символов на другие! Terry_0 Тест-форум 0 16-02-2014 12:53
Любой язык - [решено] Замена символов на другие в огромном файле Megatron13 Скриптовые языки администрирования Windows 6 01-10-2012 06:03
2010 - как построить график в эксель по формуле? Pozia Microsoft Office (Word, Excel, Outlook и т.д.) 7 29-05-2011 14:29
Замена символов Guest Программирование и базы данных 13 20-03-2003 17:55




 
Переход