Abril 24, 2018, 10:35:19 am

Autor Tema: F.A.Q → Preguntas Frecuentes Batch → Actualizado [24/01/2013]  (Leído 10714 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado HolyKnight

  • Elprince
  • Moderador
  • *****
  • Mensajes: 2178
  • Sexo: Masculino
  • chgb ry dhr yrr
    • Ver Perfil
    • Holyknight's Web
F.A.Q
[Update 24/01/2013 (Holyknight)]
Frequentenly Asked Questions

El objetivo de este post es mostrar lo basico de esta area y responder dudas que puedan presentarse.


¿Qué es Batch?
Muchos dirian que es un lenguaje de programacion pero en verdad es un archivo de procesamiento por lotes, permitiendo entre otras cosas automatizar tareas. En un archivo bat o batch se puede incluir cualquier comando de Ms-DOS. Se Escribe y compila con cualquier editor de texto plano como el Bloc de Notas.



¿Cúales son los comandos bat?
Los comandos que se utilizan son los mismos que se usan en ms dos, pero igual los pongo para la gente q no los conoce o no los conoce todos.

Código: You are not allowed to view links. Register or Login
CD - Para cambiar de un directorio a otro.
CLS - Borra todo de la pantalla y regresa el cursor en la esquina izquierda superior.
COPY - Se utiliza para copiar archivos.
DATE - Se utiliza para cambiar o visualizar la fecha.
DEL - Se utiliza para borrar archivos.
DIR - Se utiliza para ver por pantalla una lista con los archivos y directorios (carpetas) que se encuentran en un directorio del disco.
PATH - Sirve para especificar trayectorias, en las cuales, el sistema operativo busca ficheros ejecutables. Es un comando que se suele escribir en el Config.sys y en archivos de procesos por lotes.
EXIT - Se utiliza para salir de la ventana MS DOS. Tambien se puede utilizar el parmetro /b que sólo sale de la aplicación.
MD - Se utiliza para hacer una nueva carpeta.
PROMPT- Cambia la línea de visualización de la orden
RD - Para Remover un Directorio que esté totalmente vacío.
TIME - Visualiza o cambia la hora del reloj interno.
VER - Muestra la versión del Sistema Operativo.
LABEL - Visualiza y modifica etiqueta del disco duro.
VOL - Muestra la etiqueta del disco duro y su etiqueta (si la tiene)
CD o CHDIR - Orden de los sistemas operativos DOS y UNIX que nos sirve para cambiar de escritorio.
CD.. Sirve para cambiar al directorio jerárquicamente superior.
CD \nombre_directorio Sirve para ir al directorio jerárquicamente inferior.
CD \ Sirve para cambiar directamente al directorio raíz.
ECHO - Muestra un texto especificado en la pantalla.
ECHO OFF Sirve para que no se vea eco de los comandos ejecutados, Nota: se escribe como línea de código, en los archivos de procesos por lotes (.bat) y no en la línea del prompt.
RENAME - Renombra archivos y directorios.
REDIRECCIONAMIENTOS

< Redireccionamiento de la entrada. Su sintaxis es comando < fichero.

> Redireccionamiento de la salida. Su sintaxis es comando > fichero.

>> Redireccionamiento de la salida a un fichero existente. Su sintaxis es comando >> fichero
Además al usar :
echo Mensaje > file.txt
reescribirás todo , en cambio al utilizar:
echo Mensaje >> file.txt
No reescribes y añade "Mensaje" alfinal del archivo file.txt

FILTROS - Concatenaciones

| Pipe, o tuberia, concatena comandos.

|more: separa por pantallas.

|sort: ordena por orden alfabético.

|find: busca cadenas de texto, dentro de un archivo.

& Utilizado para concatenar uno o mas comandos en un linea, solo si el anterior se ha cumplido
&& Concatena si la funcion anterior se cumple, o no se cumple.



¿Qué es lo que puedo llegar a hacer en batch?
Las posiblidades de los batch son casi ilimitadas, solo te limitan tu imaginacion, tu ingenio y cierta logica como por ejemplo no puedes crear un sistema operativo en batch. (Solo lo uso como ejemplo exagerado xD)
En batch se puede crear una gran diversidad de codigos, desde calculadoras y  agendas hasta virus, malware y mas! Tambien puedes facilitar tareas con ordenes tales como "AT" con la cual puedes automatizar la ejecucion de un programa o comando cualquiera.



¿Por Qué Aprender Batch primero y no otro lenguaje como C o Perl?
Facil, en batch logras resultados inmediatos. Ademas de sus facilidad y simplicidad a la hora de codear, es un lenguaje muy poderoso se pueden crear muchos programas complejos con solo unas cuantas lineas de codigo. Muy eficas, liviano y servicial. Puedes Editar su code en cualquier maquina que corra sobre windows (en la actualidad el 90%, triste realidad) sin necesidad de instalar ningun editor extra.



¿Que programas necesito descargar para programar batch?¿De donde los descargo?
No, no necesitas ningun tipo de software especial solo necesitas el cmd y el block de notas.



¿Donde Hay Tutoriales para aprender Batch?
Todo este sub-foro esta repleto de manuales a contonuacion te pondre los mas interesantes.

Iniciacion Batch desde 0 By ]{HolyKnight}[
You are not allowed to view links. Register or Login

Manual de Batch principiantes by Mr.Lerzep
You are not allowed to view links. Register or Login

Manual desde cero By Jimmy Hack
You are not allowed to view links. Register or Login

Manual desde cero By K4ron73
You are not allowed to view links. Register or Login

Ejercicios Batch By ne0x:
You are not allowed to view links. Register or Login


¿Como podría realizar un estilo de conección remota con batch?
Algunas vecez, nos llega la interes de realizar algun tipo de coneccion externa hacia otra pc, o algun servidor, ya sea por motivos maliciosos o solo una funcion más, a nuestros programas, por ejemplo una auto-actualizacion, o recibir o enviar algun tipo de datos con otras PC.
En estos casos se puede usar comandos como :
  • NetCat : You are not allowed to view links. Register or Login
  • FTP : You are not allowed to view links. Register or Login
  • Telnet.
Etc.



¿Es posible realizar un troyano o shell remota con batch?
Bueno, muchas veces se dice que no es posible, se puede, por ejemplo con los comandos anteriormente mensionados, el problema está que no es muy eficaz, el netcat es detectado por los antivirus,etc.
  • El troyano: lo mas comun sería, usando FTP, enviando archivos con ciertas instrucciones, y el "cliente", al recibirla, interpretarla(siendo nosotros el server).
     
      Ejemplares:
       
  • Troyano usando Netcat : You are not allowed to view links. Register or Login
       
  • Troyano Utilizando apache y tftp : You are not allowed to view links. Register or Login
       
  • Troyano usando FTP : You are not allowed to view links. Register or Login

  • La Shell remota: en batch seria algo parecido a los "troyanos", tenemos la consola de comandos de otra pc remotamente, enviando directamente comandos a su shell.

      Ejemplares:
       
  • Shell remota usando FTP : You are not allowed to view links. Register or Login



¿Existe la posibilidad de crear un keylogger en batch?
Esta pregunta es muy frecuente, la respuesta temporalmente es no, por que aún no hay algun conocido comando que permitiera capturar las teclas sin que este la ventana del "cmd.exe" activa, seria posible si se creára un estilo de comando "Hotkeys".




¿Como podria mejorar el aspecto de mi programa en batch?
Mejorar el aspecto basicamente, se puede con los siguientes elementos:

 -Comando "mode" // puede servir redimensionar el tamaño de la ventana(columnas y lineas)
 -Comando "color" // sirve para darle color diferente al fondo y a la fuente del programa
 -Efectos simples // podrian ser una barra de carga, presentacion,etc.
 -Caracteres especiales(puedes encontrarlos en el tutorial de Holy) // puedes usarlos para crear cuadrados, cuadro de dialogos, marcos,etc.





¿Como podria mejorar el aspecto funcional de mi programa en batch?
Se han creado nuevos comandos, donde dan la posibilidad de poder usar el teclado en nuestro programa, pero de otra forma total distintas, tambien la posibilidad de usar el mouse en batch, usar sistema de coordenadas, colores,etc.

Nota importante: Los comandos podrian no funcionar, ya que algunos depende de Procesador 16bit, 32 o 64; y/o el sistema operativo.Esto no sera el problema ya que lo especificare al nombrarlos.


     
    • Keyboard (funcionalidad del teclado) [16 y 32 bits] : You are not allowed to view links. Register or Login
       
    • !Keyboard (funcionalidad del teclado) [32 y 64 bits] : You are not allowed to view links. Register or Login
       
    • ParentImageCmd (Imagen en el cmd) [16 y 32 bits] : You are not allowed to view links. Register or Login
       
    • Mouse en batch (usa debug, por lo tanto, en algunos winVista no funcionaria) [16 y 32 bits] : You are not allowed to view links. Register or Login
       
    • BatchPaint (usa debug, por lo tanto, en algunos winVista no funcionaria) [16 y 32 bits] : You are not allowed to view links. Register or Login
       
    • Colouss (uso de coordenadas y colores) [32 y 64 bits] : You are not allowed to view links. Register or Login
       
    • Paintcolous (usano "colous") (Diseños para tus programas en batch) [32 y 64 bits] : You are not allowed to view links. Register or Login
       
    • MBOX (Uso personalizado del conocido MSG *, mas personalizable) You are not allowed to view links. Register or Login



    ¿Donde puedo encontrar codigos de ejemplos?
    Puedes encontrar una gran variedad de programas batch(obviamente su codigo fuente) en la seccion "Código Abierto Batch".
    You are not allowed to view links. Register or Login




    ¿Como puedo compilar mi bat a EXE?
    Esta pregunta es frecuente, pero hay que reconocer algo de esto, que batch no se compila, ya que no es un lenguaje, sino un script-
    Pero si se puede "incrustar" el bat en un ".EXE", por lo que el bat(en la mayor parte) se extraería en una carpeta temporal.

    Existen ciertos "compiladores" de bat, que tampoco es la unica respuesta a esto, ya que es posible usando solamente Winrar[SFX], o el Iexpress.

    You are not allowed to view links. Register or Login
    You are not allowed to view links. Register or Login




    ¿Como ocultar la ventanita del CMD?
    Puedes usar algun otro lenguaje, como vbs, o algunos softwares que existen, la mayoria lo hacen al "compilarlo" a EXE

    You are not allowed to view links. Register or Login
    You are not allowed to view links. Register or Login




    Como hacer para que mi bat se ejecute al inicio de windows?
    Ésto se puede lograr de varias formas, copiando el bat a la carpeta inicio del menú de inicio,
    crear un servicio con el bat, o el mas sensillo y eficás que él anterior(sin contar al menu de inicio) es agregándo el bat
    al registro RUN de windows


    Para realizar algun cambio en el registro, necesitarás del comando REG, y para agregar algun dato o valor, el parametro ADD
    De modo que quedara REG ADD

    Ahora hay que especificar la ruta de entrada(run), y el valor (datos del bat como la ruta).
    Para saber más acerca de las entradas run(ejecucion junto a windows), visita éste post You are not allowed to view links. Register or Login

    por ejemplo:
    Código: You are not allowed to view links. Register or Login
    HKLM\Software\Microsoft\Windows\CurrentVersion\Run
    Entonces salteandonos la explicacion del comando  REG ADD(por que existe un tutorial) quedaria así la linea de codigo
    para que realice ésta accion(ejecute al iniciar windows)

    Citar
    reg add hklm\software\microsoft\windows\currentversion\run /v CUALQUIER_NOMBRE /t reg_sz /d RUTA_DEL_BAT /f

    Podemos reemplazar "RUTA_DEL_BAT" por la variable de entorno %0, que representa a la ruta actual del bat, o poder otra ruta si quieres copiar el bat,etc.



    ¿A quien puedo recurrir en caso de dudas con este lenguaje?

    En General puedes postear tus dudas en el foro pero si quieres algo mas personal puedes mandarle un mensaje a cualquiera de los moderadores que nombrare a continuacion:
    PD: No te sorprendas si no se responden tus mensajes a los moderadores, los moderadores solo responderan si tienen tiempo.




    Suerte!
    « Última modificación: Enero 24, 2013, 08:21:07 pm por HolyKnight »
    You are not allowed to view links. Register or Login

    "Todo el mundo desea saber, pero nadie quiere pagar el precio."

    I was blind, but now i see.


    xx
    22 preguntas frecuentes sobre preguntas frecuentes y algunas recomendaciones

    Iniciado por shevchenko

    0 Respuestas
    1228 Vistas
    Último mensaje Abril 09, 2009, 10:45:04 am
    por shevchenko
    exclamation
    Recopilación de PDF's sobre Batch en español (Actualizado 26/08/2013)

    Iniciado por FranRG96

    0 Respuestas
    1182 Vistas
    Último mensaje Agosto 26, 2013, 02:24:10 pm
    por FranRG96
    exclamation
    Reglas SubForo Batch ♦ Leer Antes - Actualizado [24/01/2013]

    Iniciado por JaAViEr

    1 Respuestas
    110872 Vistas
    Último mensaje Agosto 10, 2011, 09:34:47 pm
    por HolyKnight
    smiley
    Preguntas mas frecuentes

    Iniciado por Dark Allien

    0 Respuestas
    1464 Vistas
    Último mensaje Mayo 08, 2007, 01:02:48 pm
    por Dark Allien
    xx
    preguntas mas frecuentes sobre virus

    Iniciado por wanm28

    0 Respuestas
    1447 Vistas
    Último mensaje Junio 15, 2007, 11:32:56 am
    por wanm28
    exclamation
    [FAQ´S] Index de Preguntas y Temas mas Frecuentes [FAQ´S]

    Iniciado por ..::Lëssiëm Táralóm::..

    1 Respuestas
    13443 Vistas
    Último mensaje Julio 09, 2008, 07:11:31 pm
    por ..::Lëssiëm Táralóm::..
    thumbup
    » [FAQ - Frequently Asked Questions] Recopilación de preguntas frecuentes

    Iniciado por seth

    0 Respuestas
    7545 Vistas
    Último mensaje Julio 06, 2008, 07:29:17 pm
    por seth
    exclamation
    --FAQ's y Temas Importantes-- NUEVOS LEER! (Actualizado 2013)

    Iniciado por By Holyknight

    36 Respuestas
    28071 Vistas
    Último mensaje Diciembre 24, 2013, 01:46:30 am
    por HolyKnight
    resuelto
    Preguntas De Batch ¿ ? ¿ ?

    Iniciado por Joelsitooo

    1 Respuestas
    740 Vistas
    Último mensaje Diciembre 21, 2011, 11:42:08 am
    por 2Fac3R
    exclamation
    Batch cuestionario con preguntas.

    Iniciado por alexandrovich

    7 Respuestas
    2675 Vistas
    Último mensaje Abril 05, 2011, 09:26:15 pm
    por JaAViEr