PDA

Показать полную графическую версию : [решено] Копирование строк в отдельный файл по условию


Страниц : 1 [2]

AlexVong
03-05-2011, 21:06
Foreigner,
Не помогает, не chcp 1251 не chcp 1251>nul
Приходится все файлы перекодировать вручную в кодировку 866, только тогда батник срабатывает нормально.

Foreigner
03-05-2011, 21:21
Не помогает, не chcp 1251 не chcp 1251>nul
Приходится все файлы перекодировать вручную в кодировку 866, только тогда батник срабатывает нормально. »
А сам батник в какой кодировке? Сохрани его в 1251. Мне кажется проще в одном файле поменять кодировку :))

AlexVong
03-05-2011, 21:48
Foreigner,
Батник есть и в 1251 и в 866, результат тот же :cry:

Foreigner
03-05-2011, 22:10
AlexVong,
Давай разбираться.
1. Создал 1.txt в 1251 с текстом:

тест

2. Создал батник в 1251:

@echo off
findstr "тест" 1.txt

3. В консоли 866
4. Выполнил -- результат положительный:

> 111
ЄхёЄ

>

JohnikE
25-01-2013, 10:35
Уважаемы форумчане!
Подскажите как сделать поиск в файле .txt определенного слова и строки с с данным словом копировать в отдельный файл.
Спасибо!

Iska
25-01-2013, 10:59
find.exe /?
findstr.exe /?

al29
24-08-2016, 23:33
Уважаемые форумчане! Помогите как же выделить строки содержащие определённый текст в середине строки (не в начале) + ещё одну последующую и отправить в другой файл.

данный код

@echo off
SetLocal EnableDelayedExpansion

set fi=1.txt
set fo=1.out

(for /f "tokens=1 delims=:" %%i in ('findstr /brnc:"/[1-6]000" /c:"Отдел" "%fi%"') do (
set /a $j=%%i+1& for /f "tokens=1* delims=[]" %%a in (
'find /v /n ""^<"%fi%"^|findstr /bc:"[%%i]" /c:"[!$j!]"') do echo.%%b
)) >"%fo%"

почему то возвращает пустой файл. кодировка файла DOS




© OSzone.net 2001-2012