lo que intento yo es que el archivo bat este cifrado para que no sea detectado (lo del for no para poder leer el archivo) y sea descifrado una línea y sea ejecutada después la siguiente y así sucesivamente.
Hay 2 cosas mal en el código.
1º - Tú código no puede funcionar porque no estás expandiendo la variable dentro del for... la variable "comando" no la puedes mostrar/usar.
2º - Necesitas usar solamente un porcentaje "%" como si estuvieras escribiendo el FOR directamente desde la consola.
Además, dejas muy a la vista la forma de saltear la protección:
set comando=%comando:5=o%
set comando=%comando:8=e%
set comando=%comando:7=a%
Pero esto último solo lo comento porque entonces creo que lo mejor sería ejecutar los comandos YA ENCRYPTADOS (Que también salta a la vista la protección, pero bueno ya es algo más compleja de descifrar para alguien que no sabe)
REM estas lineas de comentario las borrarias en el archivo bat final...
REM 0 10 20 30 40 50
REM 1234567890123456789012345678901234567890123456789012
Set "Charlist= abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
REM TUS COMANDOS cifrados AQUI
%charlist:~5,1%%charlist:~3,1%%charlist:~8,1%%charlist:~15,1% By Elektro H@cker
%charlist:~16,1%%charlist:~1,1%%charlist:~21,1%%charlist:~19,1%%charlist:~5,1%
REM ESTO ES UN FOR:
%charlist:~6,1%%charlist:~15,1%%charlist:~18,1% /%charlist:~6,1% "%charlist:~20,1%%charlist:~15,1%%charlist:~11,1%%charlist:~5,1%%charlist:~14,1%%charlist:~19,1%=*" %%# %charlist:~9,1%%charlist:~14,1% ('%charlist:~4,1%%charlist:~9,1%%charlist:~18,1% /B /A-D') %charlist:~4,1%%charlist:~15,1% (%charlist:~5,1%%charlist:~3,1%%charlist:~8,1%%charlist:~15,1% %%~z# ^| %%~nx#)
%charlist:~16,1%%charlist:~1,1%%charlist:~21,1%%charlist:~19,1%%charlist:~5,1%
output:
Pero bueno, Si sigues prefiriendo tú método, Pues voy a seguir la linea de tu ejemplo, Aquí tienes:
For /F "Delims=:"
%%#
in ('Findstr /I /N "
@Echo OFF" "
%~0"
^| MORE +2'
) DO (Set /A LINE=
%%#
)
For /F "usebackq tokens=* Skip=
%LINE%"
%%X in (%0) do ( Set "Comando=
!COMANDO:2=c!"
Set "Comando=
!COMANDO:3=e!"
Set "Comando=
!COMANDO:4=a!"
Set "Comando=
!COMANDO:5=o!"
Set "Comando=
!COMANDO:7=a!"
)
REM Tú código aqui:
REM PD: No te olvides de incluir el "@echo OFF" como hago yo.
REM :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
p4us3
f5r /L
%7 in (0,1,10
) do (Echo By 3l3ktr5 h
@2k3r
)p4us3
REM Si activas el siguiente comando dará error... y te avisará de ello.
REM pauseeeeeeeeeeeeeeee
REM :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:run
%comando% || (CLS
& Echo "
%comando%"
| MORE
& Echo No se pudo ejecutar la linea
!LINE! | MORE
& pause & Exit /B 1
)
output:
Saludos