Тема: CMD/BAT: Вытащить строки
Здравствуйте помогите пожалуйста сделать батник который будет вытаскивать из файла строки, которые содержат 13 символов и среди них есть хотя бы одна буква и одна цифра
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Здравствуйте помогите пожалуйста сделать батник который будет вытаскивать из файла строки, которые содержат 13 символов и среди них есть хотя бы одна буква и одна цифра
Упакуйте образец файла в архив, выложите на DropMeFiles.
1. Ровно 13 символов? Учитываются ли в этом количестве символы конца строки? Или нет?
2. Буквы какие? Только латиница, только кириллица, и то, и другое?
3. Почему именно пакетный файл?
1- https://dropmefiles.com/WN24d , не учитывая пробелы
2- Количество символов строки необходимо указывать в bat-файле, латиница(в приоритете) и кириллица
3- ?
feyk55555, Вы на какие свои вопросы отвечаете, мною не заданные. А мои большей частью игнорируете.
Вот Вам образец кода:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 1251
type "123.txt" | findstr.exe /r /i /c:"^.............$" | findstr.exe /r /i /c:"[A-Za-z0-9А-Яа-яЁё]"
>nul chcp 866
endlocal
exit /b 0
Первым findstr.exe отбираются строки длиной «13 символов», вторым — содержащие «хотя бы одна буква и одна цифра».
Не совсем понял код и не получается сделать вывод в новый файл. А ещё остальные нужно в другой файл
@echo off
setlocal enableextensions enabledelayedexpansion
set sPattern=[A-Za-z0-9А-Яа-яЁё]
>nul chcp 1251
>"NewFile.txt" (
type "123.txt" | findstr.exe /b /e /r /i /c:"............." | findstr.exe /r /i /c:"%sPattern%"
)
>"OtherStrings.txt" (
type "123.txt" | findstr.exe /v /b /e /l /g:"NewFile.txt"
)
>nul chcp 866
endlocal
exit /b 0
alexii
Прошу прощения, я не правильно написал. Нужно из такой базы то, что после ":" проверять (7 символов, не менее 1 буквы и не менее 1 цифры)
https://dropmefiles.com/WE7ao
И выводить полностью строку, в которой после ":" соответствует, а в другой файл полностью строку, которая не соответствует
alexiiДобрый день, прошу прощения, я не правильный образец файла скинул. Строки должны быть в формате:
"login@mail.ru:qwe7rty
asd@yandex.ru:123456789qwer"
И нужно получить те строки, где то, что после ":" состоит из N символов и содержит хотя бы одну букву и одну цифру.
Помогите, пожалуйста
@echo off
setlocal enableextensions enabledelayedexpansion
set /a iCount = 7
set sPattern1=
for /l %%i in (1, 1, %iCount%) do set sPattern1=!sPattern1!.
set sPattern2=[A-Za-z0-9А-Яа-яЁё]
set sSourceFile=C:\Мои проекты\0198\Source file.txt
if exist "%sSourceFile%" (
>nul chcp 1251
>"NewFile.txt" (
type "%sSourceFile%" | 2>nul findstr.exe /e /r /i /c:":%sPattern1%" | 2>nul findstr.exe /r /i /c:"%sPattern2%"
)
>"OtherStrings.txt" (
type "%sSourceFile%" | 2>nul findstr.exe /v /b /e /l /g:"NewFile.txt"
)
>nul chcp 866
) else (
echo Can't find source file [%sSourceFile%].
exit /b 1
)
endlocal
exit /b 0
iCount — это Ваше число «N символов».
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться