Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

Ответить
Настройки темы
CMD/BAT - Обратотать файл и создать список аккаунтов которые имеют определенную игру

Аватара для aVitaliy

Пользователь


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

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


Изменения
Автор: aVitaliy
Дата: 27-06-2024
Подскажите как сделать такое. При помощи BAT файла или PowerShell.
Мне надо из текстового файла выбрать аккаунты, которые содержат нужную мне определенную игру и создать отдельный файл с перечнем этих аккаунтов.
В данном случает, мне нужно составить список аккаунтов которые имеют для примера только игру: app/252490 | Rust
Чтобы в конечном итоге этот список выглядел вот так (Все одной строкой, после каждого аккаунта запятая): ac1,ac4,ac5,...

Файл который надо обратотать

<ac1> Уже имеет: app/252490 | Rust
<ac1> Уже имеет: app/700580 | Rust - Staging Branch
<ac1> Уже имеет: app/435120 | Rusty Lake Hotel

<ac2> Уже имеет: app/700580 | Rust - Staging Branch
<ac2> Уже имеет: app/435120 | Rusty Lake Hotel

<ac3> Уже имеет: app/700580 | Rust - Staging Branch
<ac3> Уже имеет: app/435120 | Rusty Lake Hotel

<ac4> Уже имеет: app/252490 | Rust
<ac4> Уже имеет: app/700580 | Rust - Staging Branch
<ac4> Уже имеет: app/435120 | Rusty Lake Hotel

<ac5> Уже имеет: app/252490 | Rust

<ac6> Уже имеет: app/700580 | Rust - Staging Branch
<ac6> Уже имеет: app/435120 | Rusty Lake Hotel

и так далее...

Отправлено: 08:21, 27-06-2024

 

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

fascinating rhythm


Moderator


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

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


Powershell
Код: Выделить весь код
$in = 'C:\temp\in.txt'
$out = 'C:\temp\out.txt'
$game = 'app/252490 | Rust'

(gc $in) -match "$game$" -replace '^<(.+)>.*','$1' -join ',' > $out

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

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

Отправлено: 12:32, 27-06-2024 | #2



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

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


Ветеран


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

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


Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion

set in=a.txt
set id=252490

for /f "tokens=1 delims=<>" %%a in ('type %in% ^|find "%id%"') do set r=!r!,%%a
echo %id% = %r:~1%
pause

Последний раз редактировалось sov44, 27-06-2024 в 14:31.

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

Отправлено: 14:21, 27-06-2024 | #3


Аватара для aVitaliy

Пользователь


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

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


Цитата sov44:
Код:
@echo off
setlocal enabledelayedexpansion
set in=a.txt
set id=252490
for /f "tokens=1 delims=<>" %%a in ('type %in% ^|find "%id%"') do set r=!r!,%%a
echo %id% = %r:~1%
pause »
Можно как-то так же извлечеть из лог файла имена аккаунтов и составить из них них список (Все одной строкой, после каждого аккаунта запятая): ac1,ac4,ac5,...
Только вот имена аккаунтов, проблема в том что могут быть разной длины. Для примера 11 и 12 символов.

Файл который надо обратотать

2024-07-01 03:30:29|ArchiSteamFarm-9720|DEBUG|zlobniychel|InternalRequest() Forbidden <- GET https://store.steampowered.com/explore?l=english
2024-07-01 04:54:19|ArchiSteamFarm-9720|DEBUG|vertimoguner|InternalRequest() Forbidden <- GET https://store.steampowered.com/explore?l=english
2024-07-01 05:26:30|ArchiSteamFarm-9720|DEBUG|nastoyazhiy|InternalRequest() Forbidden <- GET https://store.steampowered.com/explore?l=english
2024-07-01 05:46:01|ArchiSteamFarm-9720|DEBUG|progorklynov|InternalRequest() Forbidden <- GET https://store.steampowered.com/explore?l=english

Отправлено: 11:21, 01-07-2024 | #4


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

fascinating rhythm


Moderator


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

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


Powershell
Код: Выделить весь код
$in = 'C:\temp\in.txt'
$out = 'C:\temp\out.txt'

(gc $in |% {$_.split('|')[3]}) -join ',' > $out

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

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

Отправлено: 11:28, 01-07-2024 | #5


Аватара для aVitaliy

Пользователь


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

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


Цитата DJ Mogarych:
Powershell
Код:
$in = 'C:\temp\in.txt'
$out = 'C:\temp\out.txt'
(gc $in |% {$_.split('|')[3]}) -join ',' > $out »
Срабатывает, но так как в лог файле есть еще много других строк содержащие имена аккаунтов, то выводит вообще все аккаунты, а не только аккаунты которые содержат строки "InternalRequest() Forbidden <- GET https://store.steampowered.com/explore?l=english".

Отправлено: 12:38, 01-07-2024 | #6


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

fascinating rhythm


Moderator


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

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


aVitaliy, так нужно было написать об этом, телепатов нету же.

Код: Выделить весь код
$in = 'C:\temp\in.txt'
$out = 'C:\temp\out.txt'
$str = 'InternalRequest() Forbidden <- GET https://store.steampowered.com/explore?l=english'

(sls -Path $in -SimpleMatch $str |% {$_.tostring().split('|')[3]}) -join ',' > $out

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

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

Отправлено: 13:09, 01-07-2024 | #7


Аватара для aVitaliy

Пользователь


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

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


Цитата DJ Mogarych:
aVitaliy, так нужно было написать об этом, телепатов нету же. »
Согласен, упустил из виду, не подумал заранее об этом. Сейчас проверил, работает как надо. Благодарю!

Отправлено: 13:23, 01-07-2024 | #8



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Извлечь из архива только определенную папку/определенный файл SharkyEXE Скриптовые языки администрирования Windows 34 09-08-2017 22:34
Как создать игру? KoJIDyH Игры 17 15-03-2016 09:13
CMD/BAT - Результат выполнения команды дописать в файл в определенную строку DR_WELL Скриптовые языки администрирования Windows 1 24-06-2011 04:57
Инфо - Список стандартных шрифтов которые нельзя изменять FlatX007 Оформление Windows XP 3 23-01-2010 18:58
Список программ которые работают только на проце 64бит venuko Хочу все знать 6 18-07-2008 23:02




 
Переход