A consulta sc localizada e a localização não fazem sentido para mim. Mesmo que não seja uma linha legal, esta é a IMHO mais clara.
@Echo off
echo.&echo.&echo =====Disable services=====
echo.
for %%x in (
"Mcx2Svc"
"NetTcpPortSharing"
"RemoteRegistry"
"SharedAccess"
"fax"
"TabletInputService"
"RemoteAccess"
"UxSms"
"Bdesvc"
"EFS"
"wsearch"
"ehsched"
"ehRecvr"
) do For /f "tokens=1-3 delims=: " %%S in (
'sc query %%x ^|findstr /i "STATE" 2^>^&1 '
) Do (
echo Changing services to disabled: %%x %%S %%T %%U
Echo sc config %%x start= disabled
)
O for / f analisa a saída da consulta sc e filtra a linha com STATE, armazenando no vars %% S, %% T, %% U
Para mostrar o que seria executado, o sc config é precedido por um eco. Remova o eco para ativar o comando.