Имя пользователя:
Пароль:
 | Правила  

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

Ответить
Настройки темы
Любой язык - [решено] Оставить только нужные строки в текстовом файле

Ветеран


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

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


Здравствуйте. есть два txt файла:

1.txt
Код: Выделить весь код
0001 - *0333*;*0400*;*0475*;*0514*;*0575*;*0594*;*0699*;*0816*
0002 - *0088*;*0141*;*0804*;*1154*
0003 - *0352*;*0692*
0004 - *0056*;*0640*;*0740*;*0746*;*0809*;*1312*
0005 - *0004*;*0012*;*0025*;*0027*;*0047*;*0076*;*0472*;*0493*;*0677*;*0710*;*0749*;*0754*;*0855*;*1300*
0006 - *0965*;*1055*
0007 - *0176*;*0205*
0008 - *0606*;*0661*
0009 - *0155*;*0162*
0010 - *0088*;*0141*;*0804*;*1154*
0011 - *0001*;*0060*;*0175*;*0375*;*0410*;*0808*
0012 - *0080*;*0340*;*0364*;*0756*;*0813*;*1357*
0013 - *0021*;*0063*;*0070*;*0177*;*0180*;*0204*;*0283*;*0284*;*0288*;*0346*;*0485*;*0490*;*0491*;*0494*;*0502*;*0512*;*0543*;*0544*;*0560*;*0577*;*0583*;*0586*;*0599*;*0679*;*0689*;*1174*;*1343*
0014 - *0251*
0015 - *0554*;*0593*;*1178*
0016 - *0075*;*0311*;*0328*;*0336*;*0342*;*0379*;*0433*;*0436*;*0515*;*0518*;*0522*;*1314*
0017 - *0022*;*0072*;*0091*;*0110*;*0117*;*0119*;*0329*;*0334*;*0423*;*0437*;*0752*;*0753*;*1051*
0018 - *0080*;*0340*;*0364*;*0756*;*0813*;*1357*

2.txt
Код: Выделить весь код
0002
0003
0004
0006
0007
Подскажите скрипт, который в первом txt оставит только те строки, которые начинаются на то, что написано во втором txt, а остальные строки удалит. Результат выведет в другой txt файл..

Если брать пример сверху, после применения скрипта результирующий текстовый файл должен быть такой:
Код: Выделить весь код
0002 - *0088*;*0141*;*0804*;*1154*
0003 - *0352*;*0692*
0004 - *0056*;*0640*;*0740*;*0746*;*0809*;*1312*
0006 - *0965*;*1055*
0007 - *0176*;*0205*

Отправлено: 05:20, 24-07-2022

 

Аватара для YuS_2

Crazy


Contributor


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

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


Цитата Alexander_88:
результирующий текстовый файл должен быть такой »
powershell
Код: Выделить весь код
$in1 = '1.txt'
$in2 = '2.txt'
$out = '3.txt'

$enc = 'utf8'

if ($psversiontable.psversion.major -gt 5){
	if ($enc -eq 'utf8'){$enc = 'utf-8'}
}

$a=gc -enc $enc $in1
$b=gc -enc $enc $in2

$res = foreach ($item1 in $a) {
	foreach($item2 in $b){
		if($item1 -match "^$item2"){$item1}
	}
}
$res|out-file -force -enc $enc $out

-------
scio me nihil scire. Ѫ

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

Отправлено: 09:44, 24-07-2022 | #2



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

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


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

fascinating rhythm


Moderator


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

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


Powershell:
Код: Выделить весь код
gc "C:\temp\2.txt" |% {(gc "C:\temp\1.txt") -match "^$_"} > "C:\temp\result.txt"

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

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

Отправлено: 10:02, 24-07-2022 | #3


Ветеран


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

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


Спасибо, все четко работает

Отправлено: 14:34, 24-07-2022 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - Оставить только нужные сообщения Alexander_88 Скриптовые языки администрирования Windows 0 23-10-2018 06:10
CMD/BAT - замена строки в текстовом файле. modzilla Скриптовые языки администрирования Windows 12 10-10-2017 12:29
Разное - Отсортировать строки в текстовом файле blackeangel Программирование и базы данных 4 10-01-2017 11:31
VBS/WSH/JS - Поиск\редактирование строки в текстовом файле pavvel Скриптовые языки администрирования Windows 2 11-04-2012 16:38
CMD/BAT - [решено] Заменить строки в текстовом файле aos Скриптовые языки администрирования Windows 3 10-02-2012 14:45




 
Переход