首页 > 解决方案 > 如何使BAT循环taskkill每3次执行一次任务?

问题描述

我需要制作一个 BAT 循环,但要每 3 次执行一次 taskkill,它会打开 google chrome。

我尝试多次复制粘贴代码,但它只打开 CSV 文件中的第一个循环

这是我的代码:

@echo off
for /f "delims=" %%a in (list.csv) do (
    start chrome "https:\\%%a"
    timeout 5
    taskkill /f /im chrome.exe
)

我只希望它像现在一样运行,但是每 3 次执行一次 taskkill,而不是每次进入浏览器

CSV 内容(我只使用 A 列):

www.google.com
www.facebook.com
www.instagram.com

重复 300 次。

标签: windowsbatch-file

解决方案


这是一个未经测试的示例,我没有 Windows PC,即使有,我也不会使用 Chrome 浏览器

@For /F "Tokens=1*Delims=:" %%A In ('FindStr /N "^" "list.csv" 2^>NUL')Do @(
    Set /A LineNum=%%A %% 3
    Start chrome "https:\\%%B"
    SetLocal EnableDelayedExpansion
    If !LineNum! Equ 0 (
        Timeout 5 /NoBreak
        TaskKill /F /IM chrome.exe
    )>NUL 2>&1
    EndLocal
)

推荐阅读