У меня есть неудобный текстовый файл (hosts.txt), мне нужно извлечь определенную часть предложения из: -
18 Jul 2019 09:30 BST
62.172.169.12
United Kingdom
H82640A745.XGPH82640
3.12.21.0
Remove
18 Jul 2019 09:29 BST
62.172.169.9
United Kingdom
H82640A744.XGPH82640
3.12.21.0
Remove
18 Jul 2019 09:26 BST
62.172.169.18
United Kingdom
H82640A740.XGPH82640
3.12.21.0
Remove
Мне просто нужен номер H ********** рядом с .XGPH82640 - поэтому из примера мне просто нужен список вроде: -
H82640A745
H82640A744
H82640A740
и так далее...
Я пытаюсь извлечь, используя токены и разделители в пакетном режиме, но я ничего не получаю. Если я попытаюсь и Skip=X количество строк, это не сработает, потому что первое число H******* имеет три строки выше, но с тех пор имеет 5.
Я прочитал SS64 о токенах и делимах, так как мне бы очень хотелось разобраться в этом самостоятельно, но я не понимаю. Особенно с этим текстовым файлом.
В данный момент я пытаюсь использовать «:» в качестве разделителя, но опять же номера токенов меняются, поэтому, если это были только первые пять строк
For /F "Tokens=4 delims=:" %%A In (hosts.txt) Do echo %%A
Любая помощь будет здорово - спасибо!
@(If Exist "hosts.txt" For /F "Delims=" %%A In ('""%__AppDir__%findstr.exe" /LIE ".XGPH82640" "hosts.txt""')Do @Echo(%%~nA)&Pause
. - person Compo   schedule 18.07.2019for /f "delims=" %%A in ('findstr /EC:".XGPH82640" hosts.txt 2^>NUL') Do @Echo(%%~nA
- person   schedule 18.07.2019