CMD/BAT - [решено] Удалить строку, если она содержит текст

Ответить
Аватара пользователя
Alexander_88

CMD/BAT - [решено] Удалить строку, если она содержит текст

Сообщение Alexander_88 »

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



у нас файл C:\1.txt



мы задали слова для поиска "title" "m.jpg[/img]" , и задали путь сохранения C:\test\karabas.txt



Все строки, содержащие 1ый либо 2ой вариант, должны удалиться, а также сама пустая строка. т.е если у нас было в 1.тхт





Код:

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

Ya poshol gulyat i svalilsya
Ya syel pon4ik title i podavilsya
Ya leg spat i ne m.jpg[/img] prosnulsya
Ya pobezhal i spotknulsya

После приминения БАТ, файл 1.тхт, должен остаться так как он есть, а также должен появиться файл C:\test\karabas.txt, с содержимым





Код:

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

Ya poshol gulyat i svalilsya
Ya pobezhal i spotknulsya

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

Re: CMD/BAT - [решено] Удалить строку, если она содержит текст

Сообщение Foreigner »

Alexander_88, C удалением пустых строк:



Код:

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

findstr /v "^$ title m\.jpg\[\/img\]" "c:\1.txt" > "c:\test\karabas.txt"
Аватара пользователя
Alexander_88

Re: CMD/BAT - [решено] Удалить строку, если она содержит текст

Сообщение Alexander_88 »

Цитата Iska:





Код:

CMD/BAT - [решено] Удалить строку, если она содержит текст






Если текст в "1.txt[/i]" не заканчивается символом "LF", то команда "FINDSTR" будет ожидать появления в этом файле новых строк, и пакетный файл завершит свою работу только тогда, когда в конце текста появится символ перевода на новую строку.
Ответить

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