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

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

Ответить
Настройки темы
CMD/BAT - [решено] Поиск определенных строк из одного файла и сохранение в другой.

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


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

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


Здравствуйте всем, ещё раз прошу вашей помощи.

Есть один файл с кучей ненужных строк, и всего двумя полезными строками. (логин и пароль), и это всё повторяется внутри файла. Пример 01.txt:

Ненужные строки
...
Логин
Ненужные строки
...
Пароль
Ненужные строки
...
Логин
Ненужные строки
...
Пароль

Цель кода найти и скопировать в другой файл только те строки, которые начинаются со слов "логин" и "пароль".

Есть следующий код:

@for /f "delims=" %%a in ('^<"%temp%\01.txt" find /i "логин"') do @(set "$a=%%a" &SetLocal EnableDelayedExpansion &echo LOGIN: !$a:~15!>>ИТОГ.txt &EndLocal)
@for /f "delims=" %%a in ('^<"%temp%\01.txt" find /i "пароль"') do @(set "$a=%%a" &SetLocal EnableDelayedExpansion &echo PASSWORD: !$a:~19!>>ИТОГ.txt &EndLocal)

Файл находится в: %temp%\01.txt
Начало строки логин всегда одинаковое, сам логин начинается с 16-го символа, и так же с паролем, он начинается (всегда) с 20-го символа строки.

Минус в том, что итоговый файл получается:
Сначала идут все логины: около 100 шт, а потом все пароли:
LOGIN:
LOGIN:
...
PASSWORD:
PASSWORD:
...

Нужно изменить код или новый, который будет читать два значения за раз и записывать их в новый файл:
LOGIN:
PASSWORD:
LOGIN:
PASSWORD:
...

Никак не могу реализовать.
Спасибо всем за советы и помощь.

Отправлено: 10:41, 05-05-2024

 

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

fascinating rhythm


Moderator


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

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


"Сделайте за меня домашку, я ничего не делал в учебном году"

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


Отправлено: 14:25, 05-05-2024 | #2



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

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


Deadooshka


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

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


проверяйте строку внутри итерации по файлу
Код: Выделить весь код
@echo off
for /f "delims=" %%s in (01.txt) do (
	set $a=%%s
	setlocal EnableDelayedExpansion
	if /i "!$a:~0,6!" equ "Пароль" (
		echo !$a:~19!>>ИТОГ.txt
	) else ( if /i "!$a:~0,5!" equ "Логин" ( 
		echo !$a:~15!>>ИТОГ.txt
	))
	endlocal
)

Последний раз редактировалось Sham, 05-05-2024 в 21:01.

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

Отправлено: 17:21, 05-05-2024 | #3


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


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

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


Sham, спасибо большое, работает идеально.

Есть только одно но, были несколько паролей в виде: !1234567!qwe и !my!password

Из-за присутствия восклицательных знаков в самом пароле, они сохраняются как: qwe и password, то есть только те символы, которые стоят после второго восклицательного знака.

Отправлено: 18:45, 05-05-2024 | #4


Deadooshka


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

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


Цитата unexisted:
присутствия восклицательных знаков »
у вас же правильно там - set $a должен быть при выключенном EnableDelayedExpansion, а у меня в итерацию надо перенести.

Отправлено: 21:06, 05-05-2024 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - Копирование строк из одного файла в другой (excel) maxim43g Скриптовые языки администрирования Windows 4 26-11-2020 16:56
CMD/BAT - Перенос строк из одного файла в другой vk_rootuser@vk Скриптовые языки администрирования Windows 2 20-07-2020 19:20
CMD/BAT - Перенос "комментариев" из определенных строк файла - в другой файл. Haart Скриптовые языки администрирования Windows 3 01-02-2015 18:34
CMD/BAT - Перенос строк из одного файла в другой jackscorpse Скриптовые языки администрирования Windows 0 25-08-2012 00:31
PowerShell - [решено] Поиск и вставка информации из одного csv-файла в другой IvanXXL Скриптовые языки администрирования Windows 1 20-07-2011 12:48




 
Переход