Windows Script Administracin de Sistemas Windows 2003 Server
- Slides: 63
Windows Script Administración de Sistemas Windows 2003 Server Santiago González Tortosa
¿Por qué Windows Script? • Automatizar backups o RI del sistema. • Apagar o Reiniciar Windows o cualquier tarea con un click de ratón • Relacionar documentos, aplicaciones y automatizar operaciones. • Controlar y automatizar tareas administrativas • Generar conexiones de red de forma automática • …
Contenidos • • • Conceptos Introducción a VBScript Windows Script Host Conclusiones Ejercicio Práctico común con Directivas de grupo
Windows Script Conceptos
Conceptos Básicos • Computador Von Neuman Almacenamiento (Mem. Secund) Memoria Principal UC entrada ALU Unidad de Control de Procesos (CPU) salida
Lenguaje de Programación • Técnica estándar de comunicación que permite expresar las instrucciones que han de ser ejecutadas en un computador. • Conjunto de reglas sintácticas y semánticas que definen un programa informático. • Permite a un programador especificar: – datos a operar, – Almacenamiento y transmisión – Acciones a realizar según circunstancias
Clasificación de Lenguajes • Lenguajes Compilados – Pascal, Ada, COBOL, Fortran, C/C++, C#, … • Lenguajes Interpretados – PHP, ASP, VBScript, Python, … • Lenguajes Compilados e Interpretados – Haskell, Prolog, …
Compilación • CPU solo entiende binario, también llamado código máquina (110010110) • Proceso ejecutándose en binario • Programa en binario • ¿Se programa en binario? NO compilador
Programa VS Proceso • Programa – “conjunto de instrucciones que llevan a cabo una operación en un computador” – Texto en un fichero • Proceso – Programa en ejecución – Se almacena en Memoria (prim. o sec. ) programa proceso
Paradigmas de Programación • • Forma de representar y manipular el conocimiento. Filosofía para la construcción del software. Cada uno tiene ventajas y desventajas. Situaciones donde un paradigma resulta más apropiado que otro. • Tipos: – Imperativo • Sentencias que cambian el estado del programa – Declarativo o Funcional • Uso de funciones matemáticas y predicados formales
Esquema de un Programa ENTRADA ALGORITMO SALIDA ALGORITMO: Conjunto de operaciones que, secuencialmente, conducen a la respuesta de una pregunta, en un numero finito de pasos.
Metodología de Programación • Pasos en la resolución – Análisis del problema – Realización de la estrategia ideada para su solución – Verificación y análisis del rendimiento del procedimiento.
Análisis del Problema • Comprensión del problema • Especificación de los datos de entrada • Estudio de los resultados que se desean obtener • Estudio del tipo de problema
Estrategia ideada • Estudio del algoritmo a utilizar – Casos básicos – Casos generales – Casos extremos • Lectura de datos de entrada • Uso de estructuras de datos • Presentación de resultados
Verificación y validación • • Prueba con casos sencillos Prueba con casos complejos Prueba con casos extremos Estudio del rendimiento – Tiempo – Uso de memoria • Refinamiento del algoritmo
Posibles ejemplos • • • Mínimo entre dos números Suma entre dos números Saber si un numero es cuadrado perfecto Calcular soluciones de una ecuacion de 2º orden Calcular si una fecha (N, N, N) es correcta o no Devolver el valor máximo de una secuencia Calcular el numero de cifras de un numero natural Indicar si una secuencia esta ordenada de mayor a menor Devolver el numero de elementos de una secuencia.
Problema de Josefo • Un grupo de personas prefieren el suicidio a la esclavitud y deciden colocarse en círculo eligiendo siempre al siguiente como ejecutor y asesinando al situado después del ejecutor. Así sucesivamente hasta quede un sólo ciudadano que debería suicidarse. El problema de Josefo es conocer en qué lugar ha de colocarse en el corro para quedar el último y reflexionar libremente sobre la decisión colectiva.
Windows Script Introducción a VBScript
VBScript • ¿Qué es? ¿Qué formato tiene? – Fichero de texto • ¿Qué extensión tiene? – fichero. vbs • ¿Cómo editarlo? – Con cualquier editor de texto – Microsoft Visual Studio • ¿Cómo ejecutarlo? – Con el comando WScript (“WScript fichero. vbs”) – Doble click al fichero
Estructura de VBScript • Estructura general de un programa – Sentencias, líneas continuas, comentarios • • • Constantes y variables Operadores Estructuras de control Bucles Funciones y Procedimientos Clases
Estructura de un Programa ‘ ********************* ‘ Programa de prueba ‘ Creado: 10/01/2006 ‘ ********************* ‘ declaro variable Dim mensaje ‘ inicializo la variable mensaje = “hola, que tal? Estoy aprendiendo a programar en VBScript” ‘ imprimo el mensaje Wscript. Echo mensaje ‘ **** Fin del programa
Constantes y Variables • Constantes Const pi = 3. 14159, beta = 0. 3 • Variables pr = 200 precio = precio + 10 nombre = “Santi” • Declaración explicita (con valor) Dim precio, iva, precio_total
Constantes y Variables • Array Dim secuencia(10) secuencia(0) = 11 Dim matriz(2, 2) • Objetos Set obj = Wscript. Arguments
Constantes y Variables Ejemplo 1: Calcular el precio real de dos ordenadores, que cuestan: – 1123 euros – 1326 euros Ambos sin iva. El programa debe devolver un mensaje personalizado. Santi, el precio total del ordenador 1 es: XXX euros Santi, el precio total del ordenador 2 es: YYY euros
Operadores • Aritméticos – +, -, *, /, (entera), Mod, ^ • Lógicos – And, Or, Xor, Imp, Not • Comparación – <, >, =, <=, >=, <> • Precedencia de operador
Estructuras de Control • Condición IF if condición then sentencias elseif condición 2 then sentencias 2 else sentencias 3 end if • Condición Case select case variable case valor sentencias case valor 2 sentencias 2 case else sentencias 3 end select
Estructuras de Control • Ejemplo 2: Ejecutar un programa que escriba una frase distinta cuando se cumpla una determinada condición, según el siguiente valor: – Valor 1 – Valor 2 – Otro valor
Bucles • • • Do while/until Do. . . loop while/until For…Next For Each…Next While • Exit Do • Exit For
Do while/until • Do While do while condición sentencias loop • Ejemplo do while a <= 10 a=a+1 loop • Do Until do until condición sentencias loop • Ejemplo do until a > 10 a=a+1 loop
Do…loop while/until • Do…loop While do sentencias loop while condición • Ejemplo do a=a+1 loop while a <= 10 • Do…loop Until do sentencias loop until condición • Ejemplo do a=a+1 loop until a > 10
For (each)…Next • For…Next For variable = inicio to fin sentencias Next • Ejemplo For i = 1 to 10 a=a+1 Next • For each…Next For each variable in seq sentencias Next • Ejemplo For each persona in cola contador = contador + 1 Next
While • For each…Next While condición sentencias Wend • Ejemplo Dim value Value = 1 While value < 10 value = value + 1 Wend
Funciones y Procedimientos • Función function nombre (parametros) parametros … ‘ nombre es variable resultado end function • Ejemplo 3 a: Realizar la suma de los 100 primeros números (número triangular)
Funciones y Procedimientos • Procedimiento sub nombre (parametros) parametros … ‘ No se retorna valor end sub • Ejemplo 3 b: Realizar la suma de los 100 primeros números (número triangular)
Clases • Formato: class nombre declaraciones funciones o procedimientos end class • Ejemplo 4: Almacenar los siguientes datos de un comprador: – – Nombre Calle Código postal Teléfono
Clases • Atributos publicos y privados • Propiedad get: el usuario me pide atributo “virtual”, que le devuelvo? • Propiedad let: el usuario da valor a un atributo “virtual”, que hago con el? property get var_virtual acciones end property let var_virtual acciones end property • Ejemplo 5: Se desea tener los siguientes datos de cada unos de los usuarios: – – Nombre completo Correo electrónico Login Password
Windows Script Host
Windows Script Host • Método ECHO • Cuadros de Mensaje • Objeto WScript – Variables de Entorno – Ejecución de programas • • • Interacción de entrada con el usuario Creación de accesos directos Uso de Sistemas de Fichero y Entrada/Salida Control de Red Control de Windows y otras aplicaciones
Método ECHO Wscript. Echo “Hola, Mundo” Wscript. Echo “Hola, ”, “Mundo” Wscript. Echo “El precio es ”, precio, _ “ pero se puede rebajar a ”, rebaja
Cuadros de Mensaje • Formato: Msg. Box texto, texto botones, botones titulo • Ejemplo: Msg. Box “esto es una prueba”, 0, “prueba” • Posibilidades: – Botones • • • 0: Boton OK 1: Ok y Cancel 2: Abort, Retry y Ignore 3: Yes, No y Cancel 4: Yes y No 5: Retry y Cancel
Cuadros de Mensaje – Iconos • • • 0: Sin icono 16: Parada 32: Pregunta 48: Exclamación 64: Información – Foco • 0: Primer botón • 256: Segundo botón • 512: Tercer botón
Cuadros de Mensaje – Resultado del Cuadro (res = función Msg. Box): • • 1: OK 2: Cancel 3: Abort 4: Retry 5: Ignore 6: Yes 7: No • Ejemplo 6: Hacer un cuadro de mensaje que pregunte si deseamos un viaje al Caribe. El programa debe contestar a cada posibilidad.
Objeto WScript • Permite acceder a argumentos For each arg in Wscript. Arguments , , , Next • Permite control de variables de Entorno Set sh = Create. Object(“Wscript. Shell”) Set env = sh. Enviroment(“Process”) … texto = env(“PATH”) = “c: /windows” env. remove(“PATH”)
Objeto WScript • Permite ejecutar otros programas sh. Run mandato [, estilo] estilo [, espera] espera – Estilo Ventana • • • 0: Oculta 1: Normal 2: Minimizada 3: Maximizada 4: Normal pero sin foco 6: Minimizada pero sin foco – Espera: True o False – Ejemplo 7: Ejecutar el programa Notepad maximizado.
Interacción de entrada • Caja de entrada res = Input. Box (prompt, [titulo], titulo [defecto], defecto [x], [y]) • Si resultado es “”, cancelación de inserción • Ejemplo 8: Ejecutar un acceso a un programa en el que el usuario tenga que indicar su username. Por cada usuario, debe contestar algo distinto. Hay tres usuarios registrados: – “Luis”, “Juan” y “Maria”
Creación de accesos directos set sh = WScript. Create. Object("WScript. Shell") set lnk = sh. Create. Shortcut(nombre) nombre … lnk. save • Path del Escritorio: path = sh. Special. Folders("Desktop") • Ejemplo 9: Creación de un acceso directo del Script en el escritorio.
Uso de Sistemas de Fichero y E/S • • set fs = WScript. Create. Object(“Scripting. File. System. Object”) Acceso a todas las unidades de discos (Ejemplo 10) set discos = fs. Drives for each d in discos … next Propiedades de una unidad if (NOT fs. Drive. Exists(“H”)) “H” then Wscript. Quit else set drive = fs. Get. Drive(“H”) “H” if (drive. Is. Ready) then drive. Drive. Letter drive. Drive. Type ‘ (Desconocido, Borrable, Duro, Remoto, CD, RAM) drive. Volume. Name (Share. Name) drive. Total. Size drive. Free. Space end if
Uso de Sistemas de Fichero y E/S • Acceso a carpetas set carpeta = fs. Get. Folder (path) path set carpetas = carpeta. Sub. Folders for each c in carpetas … c. Name Next • Crear nueva carpeta Set nc = fs. Create. Folder(path) • • • Renombrar Copiar carpeta Mover carpeta Borrar carpeta Existencia Carpeta c. Rename(nombre) nombre fs. Copy. Folder path 1 path 2 fs. Move. Folder path 1 path 2< fs. Delete. Folder(path) path fs. Folder. Exists(path) path
Uso de Sistemas de Fichero y E/S • Acceso a ficheros set ficheros = carpeta. Files for each f in ficheros … f. Name f. Size f. Date. Created f. Date. Last. Modified Next • • • Ejemplo 11: Mostrar el contenido de la carpeta System Existencia de fichero fs. File. Exists(fichero) fichero Copiar ficheros fs. Copy. File path 1 path 2 Borrar ficheros fs. Delete. File(fichero) fichero Ejemplo 12: Sistema Backup
Uso de Sistemas de Fichero y E/S • Acceso a un fichero de texto Open. Text. File(nombre [, modo[, crear[, formato]]] ) – Modo: (1) For. Reading, (2) For. Writing, (3) For. Appending – Crear: True si se va a crear nuevo. False en caso contrario – Formato: Tristate. True si es Unicode, Tristate. False si es ASCII • Lectura de fichero de texto set entrada = fs. Open. Text. File(“fichero. txt”) Do While Not (entrada. at. End. Of. Stream) Texto = Texto & entrada. Read. Line & vb. Cr. Lf Loop • Escritura (con/sin reemplazo) en fichero set salida = fs. Open. Text. File(“fichero. txt”, 2, True) True Do While Not (entrada. at. End. Of. Stream) texto = entrada. Read. Line salida. Write. Line texto Loop • Ejemplo 13: Copiar el contenido de un fichero en otro
Control de Red • Objeto “Wscript. Network” • Propiedades: – Computer. Name: nombre maquina – User. Name: usuario logeado – User. Domain: dominio conectado • Ejercicio 14: Mostrar la informacion del sistema por pantalla.
Control de Red • Añadir Impresora de Red Nw. Add. Printer. Connection [port], LPpath • Eliminar Impresora de Red Nw. Remove. Printer. Connection Name • Listado Impresoras set impresoras = Nw. Enum. Printer. Connections Name for i = 0 to impresoras. Count – 1 Step 2 puerto = impresoras(i) nombre = impresoras(i+1) next • Indicar Impresora Predeterminada Nw. Set. Default. Printer Name
Control de Red • Añadir unidades de red Nw. Map. Net. Work. Drive unidad path • Listado de unidades de red set unidades = Nw. Enum. Net. Work. Drives for i = 0 to unidades. Count -1 step 2 unidad = unidades(i) path = unidades(i+1) next • Ejemplo 15: Crear una unidad de red con una carpeta compartida de tu propia maquina
Control de Windows y otras aplicaciones • Dormir proceso • Manejo de aplicaciones con teclas
Dormir Proceso • Dormir script Wscript. Sleep milisegundos • Espera de datos, uso de CPU • Para selección de procesos set sh = Wscript. Create. Object(“Wscript. Shell”) sh. Run “Calc. exe”, 1 Wscript. Sleep 500 sh. Run “Note. Pad. exe”, 1 Wcript. Sleep 500
Manejo de aplicaciones con teclas • Uso de teclas set sh = Wscript. Create. Object (“Wscript. Shell”) sh. send. Keys(“teclas”) teclas • Teclas especiales Retroceso {BS} Num Lock {NUMLOCK} Caps Lock {CAPSLOCK} F 1 {F 1} DELETE {DEL} F 2 {F 2} ↓↑→← {DOWN UP LEFT RIGHT} … … F 16 {F 16} Shift + Ctrl ^ Alt % Enter {ENTER} ESC {ESC} Print {PRTSC} Tab {TAB}
Manejo de aplicaciones con teclas • Ejemplo 16: Crear un script que ejecute la calculadora, calcule el producto entre 1564 y 54028 y luego se cierre automaticamente (Alt+F 4)
Manejo de aplicaciones con teclas • Paso de un proceso a otro sh. App. Activate titulo – Titulo: Titulo actual de la aplicación Titulo: Titulo “Documento - Word. Pad”
Manejo de aplicaciones con teclas • Ejemplo 17: Crear un Script que ejecute el notepad y el wordpad, escriba una frase en notepad, la copie y pegue en wordpad
Windows Script Conclusiones
Conclusiones • • • Muy sencillo de programar Muy sencillo de ejecutar Muy útil Muy cómodo Puede llegar a ser complejo • Es muy parecido al resto de lenguajes de programación
Referencias • Microsoft Windows Script Host 2. 0 Developers’s Guide – Günter Born • http: //www. microsft. com/
Información • Mail: sgonzalez@fi. upm. es • Páginas web: – http: //laurel. datsi. fi. upm. es/~sgonzalez/ – http: //laurel. datsi. fi. upm. es/
- งช
- Windows 2003 service pack
- Ftp server windows 2003
- Sbs 2003 cals
- Windows server 2003 developer
- Windows server 2003 network infrastructure
- Windows storage server 2003
- Windows server 2003 eos
- Windows storage server 2003
- Administracin de empresas
- Administracin
- Administracin
- Administracin de empresas
- Administracin
- Microsoft project server demo
- Terminal server 2003
- Windows net server family
- Live communications server 2003
- Mpa timesheet
- Windows mobile 2003
- Windows server migration tools
- Lcow windows server 2019
- Sql server 2017 windows 7
- Windows eal
- Small business server 2011 end of life
- Windows storage server
- What is wins?
- Secure access acs
- Windows server 2012 essentials launchpad download
- Windows hpc server 2016
- Windows server 2000 caracteristicas
- Sonia pignorel
- Gaurav daga microsoft
- Windows codename longhorn
- Nouveauté windows server 2016
- Windows server ipam
- Bento windows 7
- Windows compute cluster
- Multipoint dashboard
- Windows server failover clustering (wsfc)
- Networking with windows server 2016
- Windows server 2012 r2 essentials
- Small business server 2010
- Basculement dhcp windows server 2016
- Eol windows server 2012
- Ipseq
- Herramientas de movie maker
- Windows xp vm download
- Windows media player 9
- Jake oshins
- Skin media player
- Nokia lumia 920 windows 10
- Alternatief voor windows live mail
- Windows identity foundation windows 10
- Manual windows movie maker
- Windows driver kit windows 7
- Windws update
- How to fade out audio in windows movie maker
- Rod ellis 2003
- 2003 august 25
- Aulaclic word 2003
- Tesla founded 2003
- William lloyd garrison jr 1934
- T.trimpe 2003 http //sciencespot.net/ answers