Windows批处理-基于模式在大文件中查找字符串并将其写入另一个文件[已关闭]

fnx2tebb  于 2023-06-24  发布在  Windows
关注(0)|答案(1)|浏览(136)

已关闭,此问题需要details or clarity。目前不接受答复。
**想改善这个问题吗?**通过editing this post添加详细信息并澄清问题。

6天前关闭
Improve this question
我有一个大的1MB的HTML文件与HTML标签和CSS和JavaScript命名为file.html。它只包含一次路径,例如https://example.com/images/large/0000.jpg,所以我想找到0000并将其写入新文件result.txt
问题是CMD方法Find不起作用,Findstr抛出Line x is too long,可能是由于文件中html行的长度。
我也尝试了PowerShell的select-string,但总是空的结果。
This answer和其他都不起作用。我已经试过了。

wwtsj6pe

wwtsj6pe1#

这应该可以工作:

编辑2023/06/19:* 代码已修改 *

@echo off
setlocal EnableDelayedExpansion

set "chunk1="
call :findPath < file.html
echo Path found: %myPath%
for %%a in ("%myPath%") do > result.txt echo %%~Na
goto :EOF

:findPath
   set /P "chunk2="
   if errorlevel 1 echo ERROR: path not found & exit /B
   set "twoChunks=!chunk1!!chunk2!"
   set "chunk1=!chunk2!"
   set "myPath=!twoChunks:*https:=https:!"
if "!myPath!" equ "!twoChunks!" goto findPath
set /P "chunk3="
set "myPath=!myPath!!chunk3!"
set "myPath=%myPath:.jpg=.jpg" & rem "%"
exit /B

输出:

Path found: https://example.com/images/large/0000.jpg

... result.txt文件中的0000

相关问题