我正在使用提供给我的脚本,它运行良好但运行速度很慢,我知道批处理很慢,但我在想,为了让它更快,我们是否也可以制作这个脚本删除它的发现,它提取后,如果我能把
txt
变小,提取过程会非常顺利和快速我的 txt 文件可以从 250K 到 400K 行长,前 100 次提取需要 4 分钟,现在对我来说这是个好时机,我没意见,但在它开始达到提取点 150 后,到 200 个文件,速度变慢了,我做了一个测试,从我的
txt
文件中提取580个文件花了1个小时所以让我解释一下过程
提取脚本在每次拍摄时提取
432
行,在此测试 txt
文件中,我有 250K
行并且我有 580
集要提取,所以前 44K
行脚本从我的文件中提取了 100 个文件txt
文件在 4 分钟内完成,我同意 一旦提取达到 125k 行,它开始变慢,越深,过程越长
我也想知道脚本是否可以更快,即使需要 20 分钟才能完成也可以,比 1 小时更好......哈哈
或者如果我们之后可以删除它
现在我测试了
findster /v "code" 1.txt > 2.txt
,这花了 3 秒来查找和删除 code
并输入新的 txt
,而 txt
文件长 620 行 我的剧本
@ECHO OFF
SETLOCAL EnableDelayedExpansion
echo.
echo Extracted Your Data
Set "Code1=crdb1"
Set "Code2=isra1"
set "skip="
for /F "delims=:" %%a in ('findstr /n "%Code1% %Code2%" "(99).txt"') do (
if not defined skip (
set /A "skip=%%a"-2
) else (
set /A "copy=%%a-skip+1"
)
)
< "(99).txt" (
rem Skip undesired lines at beginning
for /L %%i in (1,1,%skip%) do set /P "="
rem Copy desired lines
for /L %%i in (1,1,%copy%) do (
set /P "line="
echo(!line!
)
) > "2Preparing\(99).txt"
@EndLocal
findster /V "%%a" (99).txt > (99)Ready.txt