Código [Seleccionar]
@ECHO OFF
IF ["%1"]==[""] (
ECHO FALTA VALOR!
ECHO MODO DE USO :
ECHO %~NX0 VALOR
REM AQUI TODO EL DEMAS CODIGO.
)
ECHO %1
GOTO:EOF
Un posible problema es que si el usuario intrudoce ", saldrá error en el Batch.
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú@ECHO OFF
IF ["%1"]==[""] (
ECHO FALTA VALOR!
ECHO MODO DE USO :
ECHO %~NX0 VALOR
REM AQUI TODO EL DEMAS CODIGO.
)
ECHO %1
GOTO:EOF
@echo off
rem Aqui va todo el codigo
(Todo esto no será ejecutado
Es importante no cerrar el parentesis, ya que si se cierra sera ejecutado lo que
esta dentro del parentesis.
Debe de usarse solo al final de los codigos.
@echo off
REM COMENTARIO
::COMENTARIO
% COMENTARIO %
PAUSE
EXIT /B
@ECHO OFF
FOR %%X IN (NOTEPAD.EXE) DO (
::COMENTARIO SOLO
)
@ECHO OFF
FOR %%X IN (NOTEPAD.EXE) DO ()
@ECHO OFF
SET A=1
IF %A%==1 (
ECHO HOLA
::ALGO
)
PAUSE>NUL
@ECHO OFF
REM COMENTARIO
::COMENTARIO
% COMENTARIO %
(COMENTARIOS:
NUEVA FORMA DE COMENTARIOS
LEO GUTIERREZ
Citar
I must confess, this tip by Leo Gutierrez Ramirez baffled me.
I didn't expect it to work, but it does.
See for yourself:
@ECHO OFF
REM Code:
ECHO Hello
REM Comments:
(COMMENT
HELLO!
HI!
The trick is not in the exclamation marks, it is the fact that the parenthesis opens a "code block" which is never closed, and thus seems to be ignored completely by the command interpreter.
As Leo said: a useful way to add comments at the end of a batch file.
Thanks Leo
http://www.robvanderwoude.com/clevertricks.html
@ECHO OFF
IF ["%1"]==[""] (
ECHO FALTA VALOR!
)
ECHO:HAS INTRODUCIDO %1
GOTO:EOF
@ECHO OFF
SET ME=%1
IF NOT DEFINED ME (
ECHO FALTA VALOR!
)
IF DEFINED ME (
ECHO INTRODUCISTE %1
)
GOTO:EOF
@echo off
:: Binary.bat, convierte un texto a codigo binario.
if ["%1"]==[""] (goto:Syntax)
if /i ["%1"]==["-h"] (goto:Syntax)
if /i ["%1"]==["--help"] (goto:Syntax)
if ["%1"]==["/?"] (goto:Syntax)
:Code
set texto=%*
set texto=%texto:a=01000001%
set texto=%texto:b=01000010%
set texto=%texto:c=01000011%
set texto=%texto:d=01000100%
set texto=%texto:e=01000101%
set texto=%texto:f=01000110%
set texto=%texto:g=01000111%
set texto=%texto:h=01001000%
set texto=%texto:i=01001001%
set texto=%texto:j=01001010%
set texto=%texto:k=01001011%
set texto=%texto:l=01001100%
set texto=%texto:m=01001101%
set texto=%texto:n=01001110%
set texto=%texto:o=01001111%
set texto=%texto:p=01010000%
set texto=%texto:q=01010001%
set texto=%texto:r=01010010%
set texto=%texto:s=01010011%
set texto=%texto:t=01010100%
set texto=%texto:u=01010101%
set texto=%texto:v=01010110%
set texto=%texto:w=01010111%
set texto=%texto:x=01011000%
set texto=%texto:y=01011001%
set texto=%texto:z=01011010%
echo %texto%
goto:eof
:Syntax
echo %~nx0
echo.
echo Modo de uso :
echo %~nx0 Caracter
echo Caracter : Debe ser una letra del abecedario.
goto:eof
comando1 & comando2 :
comando1
comando2
comando1 && comando2 :
comando1
if %errorlevel%==0 (comando2)
comando1 || comando2 :
comando1
if %errorlvel%==1 (comando2)
}C:\WINDOWS\system32>ldkfjgkldjfgkljdklfgkljdfg & echo %errorlevel%
"ldkfjgkldjfgkljdklfgkljdfg" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
9009
C:\WINDOWS\system32>
@ECHO OFF
REM SE EJECUTA EL COMANDO MSG, SEGUIDO DEL ECHO.
MSG * HOLA! & ECHO HOLA
PAUSE>NUL
EXIT /B
@ECHO OFF
MSG * HOLA && ECHO EL COMANDO MSG SE EJECUTO CORRECTAMENTE
PAUSE>NUL
@ECHO OFF
MSG * HOLA
IF %ERRORLEVEL%==0 (
ECHO EL COMANDO MSG SE EJECUTO CORRECTAMENTE
)
PAUSE>NUL
@ECHO OFF
VER | FIND /I "LEO" && (
REM EL SIGUIENTE CODIGO NUNCA SE EJECUTARA, DEBIDO A QUE EN EL COMANDO VER
REM NO EXISTE NADA RELACIONADO CON LA CADENA "LEO"
ECHO CADENA "LEO" ENCONTRADA EN EL COMANDO VER
)
PAUSE>NUL
EXIT /B
@ECHO OFF
VER | FIND /I "XP" && (
REM EL SIGUIENTE CODIGO SI EJECUTARA, DEBIDO A QUE EN LA SALIDA DEL COMANDO VER
REM SI EXISTE "XP"
ECHO CADENA "XP" ENCONTRADA EN EL COMANDO VER
)
PAUSE>NUL
EXIT /B
@ECHO OFF
PING GOOGLE.COM && (
CLS ;
ECHO PING RESPONDIDO
) || (
CLS
ECHO MAQUINA NO ENCONTRADA!
)
Aqui logicamente que si encontrará a google.com, pero que pasa si ponemos en lugar de google.com sdfjksjdf.com :
@ECHO OFF
PING dklfjlgkdfg.com && (
CLS ;
ECHO PING RESPONDIDO
) || (
CLS
ECHO MAQUINA NO ENCONTRADA!
)
PAUSE>NUL
El codigo nos devolverá : "Maquina no encontrada!"@ECHO OFF
COPY ARCHIVO_INVENTADO.ALGO CARPETA_INVENTADA || (
ECHO EL ARCHIVO NO FUE ENCONTRADO O LA CARPETA DESTINO NO EXISTE!
) || (
ECHO ESTE MENSAJE JAMAS SE VERA
) && (
ECHO ESTE MENSAJE TAMPOCO.
)
PAUSE>NUL
@ECHO OFF
ECHO HOLA ||~|| (ECHO SI)
PAUSE
@ECHO OFF
ECHO HOLA ||.~.|| (ECHO SI)
PAUSE>NUL
@ECHO OFF
SET DAY=%DATE:~0,2%
IF %DAY% LSS 08 (IF %DAY% GEQ 01 (SET NSEMANA=1))
IF %DAY% LSS 15 (IF %DAY% GEQ 08 (SET NSEMANA=2))
IF %DAY% LSS 21 (IF %DAY% GEQ 14 (SET NSEMANA=3))
IF %DAY% LEQ 30 (IF %DAY% GEQ 21 (SET NSEMANA=4))
ECHO %NSEMANA%
PAUSE>NUL
start "" "Archivo_%NSEMANA%.XLS"
rar.exe e -ac ARCHIVO.RAR
makecab /d CompressionType=MSZIP /d FolderSizeThreshold=1 archivo.ext
downloader -download URL FILENAME
@echo off
color fc
if exist %homedrive%\passwordbas cd /d %homedrive%\passwordbas
if not exist %homedrive%\passwordbas mkdir %homedrive%\passwordbas
title PASSWORD BAS 0.1 ~ Creado por Erik
echo Bienvenido a password BAS! En este programa podras almacenar tus passwords.
echo.
:passwords
echo Bienvenido, que desea hacer:
echo 1.Mirar
echo 2.Almacenar
echo 3.Salir
set /p ejecutar=Elijo la opcion:
if not defined ejecutar (cls & goto:passwords)
cls
if %ejecutar%==1 goto:mirar
if %ejecutar%==2 goto:almacenar
if %ejecutar%==3 (exit) else (goto:passwords)
:almacenar
set /p name=Escribe el nombre para la password (Se utilizara cuando se busque):
if not defined name (goto:almacenar)
set /p contrasave=Escribe la contraseña:
if not defined contrasave (goto:almacenar)
echo %contrasave%>%name%.txt
pause
cls
goto:passwords
:mirar
set /p passmir=Escribe el nombre de la password que deseas mirar:
if not defined passmir (goto:mirar)
if exist %name%.txt goto mostrar
if not exist %name%.txt goto passwords
:mostrar
echo Password:
more %name%.txt
pause>nul
goto:passwords