CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
-
akrav
CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
Всем привет! У меня есть: 1.txt - текстовой файл с кучей строк и есть 2.txt - текстовый файл со строками, которые нужно удалить из первого файла. Или другими словами, нужно создать 3.txt - копию 1.txt за исключением строк совпадающих с содержанием 2.txt). Как это можно сделать? Спасибо! Целый день убил, так и не придумал...
-
El Sanchez
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
akrav,
Код:
P.S. Подсмотрено у amel27
Код:
Код: Выделить всё
FindStr /IVG:2.txt 1.txt > 3.txtP.S. Подсмотрено у amel27
CMD/BAT - [решено] Копирование строк в отдельный файл по условию

-
amel27
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
Цитата El Sanchez:
Подсмотрено у amel27
обнаружил одну неприятную особенность FINDSTR - шаблоны применяются как регулярные выражения независимо от ключа /R, а способа отключения этого режима вроде как нет:
Код:
Подсмотрено у amel27
CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
обнаружил одну неприятную особенность FINDSTR - шаблоны применяются как регулярные выражения независимо от ключа /R, а способа отключения этого режима вроде как нет:
Код:
Код: Выделить всё
@echo off
FindStr /? >1.txt
FindStr /? >2.txt
FindStr /IVG:2.txt 1.txt >3.txt
FindStr/IRVG:2.txt 1.txt >4.txt
FindStr/IVLG:2.txt 1.txt >5.txt-
sayyad
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
Добрый Вечер! Помогите отредактировать файлы.
есть папка Smali в нем 100500 файлы в папках и под папках
нужно найти через cmd строки содержащие
.line 1
.line 12
.line 123
.line 1234
пример такой
FINDSTR /C:"Пробел,Пробел,Пробел,Пробел.line" exaple.txt очистить эти строки и сохранить все эти файлы под своими именами в другой папке.
только без этих лине. числы в конце бывают да 20 длинною.
есть папка Smali в нем 100500 файлы в папках и под папках
нужно найти через cmd строки содержащие
.line 1
.line 12
.line 123
.line 1234
пример такой
FINDSTR /C:"Пробел,Пробел,Пробел,Пробел.line" exaple.txt очистить эти строки и сохранить все эти файлы под своими именами в другой папке.
только без этих лине. числы в конце бывают да 20 длинною.
-
Iska
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
Упакуйте образец файла в архив, приложите к сообщению.
-
sayyad
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
Цитата Iska:
Упакуйте образец файла в архив, приложите к сообщению.
вот файл
Упакуйте образец файла в архив, приложите к сообщению.
CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
h.rar
вот файл
-
sayyad
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
по сути начальные файлы не нужны только те которые отредактированы. и было бы неплохо если файли оставаясь там же где они есть и редактировались на очистку этих строк. строки важно что бы не удалялись. только очистка строки.
- Вложения
-
sayyad
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
по данному вопросу нет никаких вариантов решить это? еще есть ли возможность из менить строку например файл exaple.smali в нем строка ( const-string v5, "gunoev095@gmail.com") без скобок. е-маил должен редактироваться в ручную с командной строки.
по первому вопросу без разницы какую программу использовать главное что бы была возможность очищать все строки содержащие .prologue .line
.end packed-switch
:pswitch_data_1
.packed-switch 0x0
:pswitch_6
:pswitch_7
:pswitch_8
:pswitch_9
.end packed-switch
.end method
.method public constructor ()V
.locals 1
.prologue
.line 20
invoke-direct {p0}, Ljava/lang/Object;->()V
.line 15
const-string/jumbo v0, ""
iput-object v0, p0, Lb;->a:Ljava/lang/String;
через notepad++ поиск, замена могу очищать эти строки используя регулярные выражения "^\s\s\s\s.line\s\d*$" заменить на пустую. через FINDSTR /C:" .line" b.smali >4.txt смог вывести все эти лине на отдельный файл или на экран командера. задача редактировать не по одному файлу а сразу все файлы в каталоге в каталоге примерно окало 18000 файлов бывает. там многое еще нужно править но держа в руках команды к этим 2 вариантам остальное по вашему шаблону я сделал бы дальше сам огромное спасибо заранее за ваши труды.
по первому вопросу без разницы какую программу использовать главное что бы была возможность очищать все строки содержащие .prologue .line
.end packed-switch
:pswitch_data_1
.packed-switch 0x0
:pswitch_6
:pswitch_7
:pswitch_8
:pswitch_9
.end packed-switch
.end method
.method public constructor ()V
.locals 1
.prologue
.line 20
invoke-direct {p0}, Ljava/lang/Object;->()V
.line 15
const-string/jumbo v0, ""
iput-object v0, p0, Lb;->a:Ljava/lang/String;
через notepad++ поиск, замена могу очищать эти строки используя регулярные выражения "^\s\s\s\s.line\s\d*$" заменить на пустую. через FINDSTR /C:" .line" b.smali >4.txt смог вывести все эти лине на отдельный файл или на экран командера. задача редактировать не по одному файлу а сразу все файлы в каталоге в каталоге примерно окало 18000 файлов бывает. там многое еще нужно править но держа в руках команды к этим 2 вариантам остальное по вашему шаблону я сделал бы дальше сам огромное спасибо заранее за ваши труды.
-
sayyad
Re: CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно?
нашел решение замены отдельного слова
Команда по замене слова в строке
[spoiler]setlocal ENABLEDELAYEDEXPANSION
echo off
chcp 65001
cls
set /p infile=Путь к файлу
call :txtrepl end finish %infile% New%infile%
pause
exit
:txtrepl
rem param - find, repl, from, to
set /p FINDTXT=Что следует искать?
set /p REPLTXT=На что заменить
if EXIST %3 (
set FILEFROM=%3
) else (
echo error. Not found file %3
pause
exit
)
set FILEOUT=%4
set COUNT=0
for /F "tokens=*" %%n in (!FILEFROM!) do (
set /A COUNT=!COUNT!+1
set LINE=%%n
set TMPR=!LINE:%FINDTXT%=%REPLTXT%!
if !COUNT! == 1 (
Echo !TMPR!>!FILEOUT!
) else (
Echo !TMPR!>>!FILEOUT!
)
)
exit /b
rem end of proc[/spoiler]
Можно ли изменить чуточку эти команды и вместо изменения одного слова искать по этому слову целую строку с заменой
помогите пож.
Команда по замене слова в строке
[spoiler]setlocal ENABLEDELAYEDEXPANSION
echo off
chcp 65001
cls
set /p infile=Путь к файлу
call :txtrepl end finish %infile% New%infile%
pause
exit
:txtrepl
rem param - find, repl, from, to
set /p FINDTXT=Что следует искать?
set /p REPLTXT=На что заменить
if EXIST %3 (
set FILEFROM=%3
) else (
echo error. Not found file %3
pause
exit
)
set FILEOUT=%4
set COUNT=0
for /F "tokens=*" %%n in (!FILEFROM!) do (
set /A COUNT=!COUNT!+1
set LINE=%%n
set TMPR=!LINE:%FINDTXT%=%REPLTXT%!
if !COUNT! == 1 (
Echo !TMPR!>!FILEOUT!
) else (
Echo !TMPR!>>!FILEOUT!
)
)
exit /b
rem end of proc[/spoiler]
Можно ли изменить чуточку эти команды и вместо изменения одного слова искать по этому слову целую строку с заменой
помогите пож.