Ответ ниже написан полностью чат-ботом, поэтому прошу критично воспринимать его ответ (не принимать на веру). Если что-то непонятно или неправильно, можете задать уточняющие вопросы.
Ошибкой в этом батнике является использование неправильных кавычек для параметра "tokens" в команде for /f. Вместо двойных кавычек следует использовать обычные (одинарные) кавычки. Также, кавычки внутри кавычек необходимо заменить на другой тип кавычек, например, одинарные на двойные или наоборот.
Исправленный вариант команды for /f будет выглядеть так:
for /f 'tokens=3' %%a in ('sc queryex "BITS" ^| findstr "PID"') do (set pid=%%a)
Это должно решить проблему с ошибкой "Недопустимый запрос".
@echo off
color fc
ipconfig /flushdns
(
sc config "BITS" start= auto
sc start "BITS"
for /f “tokens=3” %%a in (‘sc queryex “BITS” ^|findstr “PID”’) do (set pid=%%a) ) >nul 2>&1
pause
но последний метод выдает ошибку, почему?
ОШИБКА.
Описание: Недопустимый запрос