Latest / M365.FM – Podcast de Microsoft 365, Copilot e IA en español / PowerShell vs CMD: por qué los objetos lo cambian todo en la automatización de Windows (Doblaje IA)
Transcript
- 0:00Speaker 2: Bienvenidos a otro episodio de Microsoft Knowledge Nuggets en M365FM.
- 0:04Speaker 2: Soy su anfitrión Mirko Peters.¿ Qué tal si les dijera
- 0:06Speaker 2: que existe una herramienta en su computadora que puede automatizar
- 0:08Speaker 2: casi cualquier cosa? Piensen en su día de trabajo habitual.
- 0:11Speaker 2: Inician sesión, abren algunas aplicaciones, hacen clic en los mismos
- 0:14Speaker 2: menús de siempre, ejecutan los mismos informes y realizan los
- 0:16Speaker 2: mismos servicios. Tal vez dedican una hora a algo que
- 0:19Speaker 2: debería tomar solo 5 minutos. Esa herramienta la que hablo
- 0:22Speaker 2: es PowerShell. Al final de este episodio entenderán qué es
- 0:25Speaker 2: realmente PowerShell cómo funcionan sus comandos y por qué es
- 0:28Speaker 2: el superpoder oculto del ecosistema de Microsoft. Comenzaremos con la
- 0:32Speaker 2: idea básica, avanzaremos por los componentes fundamentales y al final
- 0:35Speaker 2: tendrán una automatización real que pueden usar ellos mismos. Panorama general,¿
- 0:38Speaker 2: qué es realmente PowerShell? No sé qué es exactamente PowerShell.
- 0:41Speaker 2: La mayoría escucha el nombre y piensa que es solo
- 0:43Speaker 2: un símbolo del sistema legal. PowerShell es una plataforma de
- 0:45Speaker 2: automatización completa. Piénselo como un shell, de línea de comandos,
- 0:48Speaker 2: un lenguaje de scripting y una herramienta de administración remota
- 0:50Speaker 2: todo en uno. En el shell de línea de comandos
- 0:53Speaker 2: se escriben comandos y obtienen resultados, pero también es un
- 0:55Speaker 2: lenguaje de scripting que permite escribir programas que se ejecutan
- 0:57Speaker 2: solos y una herramienta de administración remota que controla docenas
- 1:00Speaker 2: o cientos de máquinas desde una sola ventana. Hace 20 años,
- 1:03Speaker 2: automatizar algo en Windows significaba usar un desorden de herramientas diferentes.
- 1:06Speaker 2: Usaban archivos por lotes para tareas simples, VBScript para las
- 1:09Speaker 2: más complejas y consolas de administración separadas para Exchange, Active
- 1:12Speaker 2: Directory y servidores de archivos. Ninguna se comunicaba con la otra.
- 1:15Speaker 2: Copiaban datos de una herramienta, los pegaban en otra y
- 1:17Speaker 2: esperaban que no se perdiera nada. PowerShell cambió todo eso.
- 1:21Speaker 2: Es una herramienta que se comunica con todo. Windows mismo, Azure,
- 1:23Speaker 2: Microsoft 365, Exchange, Teams, SharePoint, Active Directory e incluso máquinas
- 1:28Speaker 2: Linux ahora usan el mismo lenguaje, los mismos patrones y
- 1:31Speaker 2: los mismos comandos sin importar a qué estén apuntando. Y
- 1:33Speaker 2: es multiplataforma. PowerShell 7 funciona en Windows, Linux y macOS,
- 1:37Speaker 2: así que en un entorno mixto no necesitan cambiar de herramienta.
- 1:39Speaker 2: Aquí está la cuestión. Si trabajan en TI, PowerShell es
- 1:42Speaker 2: el lenguaje del ecosistema de Microsoft y la forma en
- 1:45Speaker 2: que hablan con su infraestructura y automatizan las tareas aburridas
- 1:47Speaker 2: para que puedan enfocarse en los problemas interesantes. Pero antes
- 1:50Speaker 2: de entrar en lo que puede hacer, veamos cómo funciona realmente.
- 1:53Speaker 2: Patrón verbo sustantivo. Cómo funcionan los comandos de PowerShell. Cada
- 1:56Speaker 2: comando de PowerShell sigue un patrón simple llamado verbo sustantivo
- 1:59Speaker 2: y es exactamente lo que suena. El verbo te indica
- 2:01Speaker 2: lo que quieres hacer. Obtener, establecer, nuevo, eliminar, iniciar, detener.
- 2:06Speaker 2: Y el sustantivo te indica el objetivo, como un proceso, servicio, usuario, elemento,
- 2:10Speaker 2: buzón o buzón. Si Get Process te da una lista
- 2:12Speaker 2: de los procesos en ejecución. Get Service te muestra todos
- 2:14Speaker 2: los servicios de tu equipo. Set Date cambia la hora
- 2:17Speaker 2: del sistema. Stop Service detiene un servicio. El patrón es
- 2:19Speaker 2: tan consistente que, una vez que lo aprendes, puedes adivinar
- 2:22Speaker 2: comandos que nunca has visto antes.¿ Quieres iniciar un servicio?
- 2:25Speaker 2: Escribe Service.¿ Necesitas eliminar un usuario? Escribe Remove Views. Es
- 2:28Speaker 2: así de sencillo. PowerShell se diseñó para ser fácil de descubrir,
- 2:31Speaker 2: por lo que no necesitas memorizar cientos de comandos. Tu
- 2:34Speaker 2: mejor aliado aquí es el semialet GetCommand. Ejecuta GetCommand, NounService,
- 2:39Speaker 2: y verás todos los comandos que funcionan con servicios. GetService, StartService, StopService, RestartService, SetService, NewService, RemoveService.
- 2:47Speaker 2: Todos ellos están ahí con solo pedirlos. Déjame darte un
- 2:49Speaker 2: ejemplo concreto. Supongamos que quieres saber qué comandos pueden gestionar procesos.
- 2:53Speaker 2: Ejecutas getCommandProcess. Obtienes getProcess, startProcess, debugProcess. No hace falta adivinar.
- 3:00Speaker 2: La herramienta te lo dice. Eso es lo que hace
- 3:01Speaker 2: que PowerShell sea tan distinto a las herramientas de línea
- 3:03Speaker 2: de comandos antiguos donde tenías que memorizar cada flag y parámetro.
- 3:06Speaker 2: Aquí está la razón por qué eso importa. No aprendes
- 3:08Speaker 2: PowerShell memorizando mil comandos. Aprendes el patrón y puedes deducir
- 3:11Speaker 2: el resto sobre la marcha. Es como aprender que todos
- 3:14Speaker 2: los verbos de un idioma siguen la misma conjugación Una
- 3:16Speaker 2: vez que conoces la regla, puedes aplicarla en cualquier lugar.
- 3:18Speaker 2: Pero aquí es donde PowerShell realmente se separa de todo
- 3:21Speaker 2: lo demás. Objetos, no texto. Eso cambia las reglas luego.
- 3:24Speaker 2: Esto es lo que hace que PowerShell sea fundamentalmente diferente
- 3:26Speaker 2: de cualquier herramienta de línea de comandos anterior. Las líneas
- 3:29Speaker 2: de comandos tradicionales generan texto. Ejecutas un comando y obtienes
- 3:32Speaker 2: líneas de caracteres en tu pantalla. Y eso es todo.
- 3:35Speaker 2: Si quieres hacer algo con esa salida, tienes que analizarla,
- 3:37Speaker 2: recortarla y extraer las partes que necesitas mediante manipulación de cadenas,
- 3:40Speaker 2: y eso es frágil. Un espacio fuera de lugar y
- 3:43Speaker 2: todo tu script falla. PowerShell no funciona así. Te ofrece objetos,
- 3:47Speaker 2: datos estructurados con propiedades y métodos. Cuando ejecutas getProcess, no
- 3:50Speaker 2: obtienes una tabla de texto. Tienes objetos de proceso. Cada
- 3:53Speaker 2: uno tiene propiedades como nombre, ID, CPU, memoria, hora de
- 3:56Speaker 2: inicio y métodos como kill. Puedes extraer esas propiedades, filtrarlas,
- 3:59Speaker 2: ordenarlas y exportarlas. Puedes hacer cosas con los datos que
- 4:02Speaker 2: requerirían 20 líneas de análisis de texto en un solo comando.
- 4:05Speaker 2: Es lo que cambia las reglas de juego. Déjame mostrarte.
- 4:06Speaker 2: De la forma antigua, usando el comando tasks del símbolo
- 4:09Speaker 2: de sistema, obtienes una tabla de texto. Si quieres encontrar
- 4:11Speaker 2: procesos que usen más de 50 de CPU, tienes que
- 4:14Speaker 2: escribir una lógica de análisis. Tienes que considerar anchos de columna,
- 4:17Speaker 2: espacios y encabezados. Es complicado y se rompe constantemente. Reforma
- 4:21Speaker 2: PowerShell se ve así. Obtén procesos, pásalos a WearObject en
- 4:23Speaker 2: una condición y pásalos a Exportar, CSV. Solo una línea.
- 4:26Speaker 2: Filtra solo los procesos que usan más de 50 de
- 4:28Speaker 2: CPU y guárdalos en un archivo CSV. Lo que hace
- 4:31Speaker 2: que todo esto funcione es el SEME de GetMember. Vías
- 4:33Speaker 2: cualquier comando a GetMember y te muestra todas las propiedades
- 4:35Speaker 2: y métodos que tienen esos objetos. Es como echar un
- 4:37Speaker 2: vistazo a Wacom. Ejecuta GetProcess y GetMember y de repente
- 4:41Speaker 2: ves todo. Nombre, ID y... identificador, CPU, conjunto de trabajo,
- 4:44Speaker 2: hora de inicio y métodos como matar, actualizar o esperar salida.
- 4:48Speaker 2: No tienes que adivinar qué datos están disponibles. La herramienta
- 4:50Speaker 2: te lo dice. Y hay un escenario del mundo real.
- 4:52Speaker 2: Supongamos que administras 50 servidores. Necesitas encontrar todos los servicios
- 4:55Speaker 2: detenidos en todos ellos. De la forma antigua, entrarías remotamente
- 4:58Speaker 2: a cada servidor, abrirías services.msc, revisarías manualmente y anotarías. Eso
- 5:01Speaker 2: toma horas. Con PowerShell escribes un solo comando. Obtén servicios
- 5:05Speaker 2: en cada máquina, filtra donde el estado sea detenido y
- 5:07Speaker 2: exporta un CSV. Comando, 50 servidores, el mismo resultado siempre.
- 5:11Speaker 2: sin hacer clic en interfaces gráficas y notas manuales, sin
- 5:13Speaker 2: errores al copiar datos entre ventanas. Y aquí está por
- 5:15Speaker 2: qué esto es importante. La salida de objetos significa que
- 5:18Speaker 2: puedes encadenar comandos. La salida de un comando alimenta directamente.
- 5:21Speaker 2: Al siguiente, como datos estructurados. No estás analizando texto, estás
- 5:24Speaker 2: manipulando objetos. Es la diferencia entre buscar una pila de
- 5:27Speaker 2: papeles sueltos y trabajar con un archivador donde todo tiene
- 5:30Speaker 2: una etiqueta. Desde ahora conoces el patrón y la tubería.
- 5:33Speaker 2: Hablemos de los comandos que realmente usarán. Los cinco grupos
- 5:36Speaker 2: de CMDR esencial. No necesitas aprender cientos de CMDRs para
- 5:39Speaker 2: ser productivo con PowerShell. Comienza con cinco grupos y cubrirás
- 5:42Speaker 2: cerca del 80% de lo que harás día a día.
- 5:45Speaker 2: El grupamiento es el más importante porque te enseña PowerShell
- 5:48Speaker 2: desde dentro. GetHelp, GetCommand, GetMember, esas tres son tus herramientas
- 5:52Speaker 2: de aprendizaje. No necesitas memorizar nada porque siempre puedes consultarlo.
- 5:56Speaker 2: GetHelp te muestra cómo usar cualquier comando. GetCommand te muestra
- 5:59Speaker 2: qué comandos existen. GetMember te muestra qué datos generan esos comandos.
- 6:02Speaker 2: Si no aprendes nada más, aprende estos tres. El segundo
- 6:05Speaker 2: grupo es el sistema de archivos que cubre las tareas
- 6:07Speaker 2: cotidianas que realizas constantemente. GetShieldItem enumera archivos y carpetas, CopyItem
- 6:11Speaker 2: los copia, RemoveItem los elimina y GetContent lee el contenido
- 6:14Speaker 2: de los archivos. Puedes hacer en una línea lo que
- 6:16Speaker 2: tomaría varios clics a través de múltiples ventanas de carpeta.
- 6:19Speaker 2: El tercer grupo es el sistema que gestiona lo que
- 6:20Speaker 2: se ejecuta en tu máquina. GetProcess muestra los procesos en ejecución,
- 6:24Speaker 2: GetService muestra los servicios y StartService y StopService los controlan.
- 6:28Speaker 2: RestartComputer reinicia una máquina. Si alguna vez has abierto el
- 6:31Speaker 2: administrador de tareas o servicios, estos comandos reemplazan todo eso
- 6:34Speaker 2: y funcionan de forma remota. Puedes verificar los servicios en
- 6:37Speaker 2: CiaMáquinas y moverte desde el escritor. El cuarto grupo es
- 6:39Speaker 2: filtrado y formato, donde el pipeline realmente destaca. Where object
- 6:42Speaker 2: filtra datos según condiciones. Select object, elige qué propiedades quieres ver.
- 6:47Speaker 2: Sort object, ordena tus resultados. Y group object los agrupa.
- 6:50Speaker 2: Estos semadelets convierten datos sin procesar información útil. Sin ellos,
- 6:53Speaker 2: solo estarías volcando datos en la pantalla. Con ellos puedes
- 6:56Speaker 2: hacer preguntas específicas y obtener respuestas específicas. El quinto grupo
- 6:59Speaker 2: es exportación, cómo guardas tu trabajo. Export y en CSV,
- 7:02Speaker 2: escribe en un archivo que puedes abrir en Excel. Out file,
- 7:05Speaker 2: escribe en un archivo de texto. Y Converto JSON, convierte
- 7:07Speaker 2: el formato JSON. Estos MDLets te permiten convertir tus comandos
- 7:10Speaker 2: en informes, registros o archivos de datos. Ejecutas un comando,
- 7:13Speaker 2: filtras los resultados y los guardas. Eso es un informe,
- 7:15Speaker 2: eso es automatización. Aquí un ejemplo rápido para cada grupo.
- 7:18Speaker 2: Con el descubrimiento, ejecutarías GetCommandNoneService para ver todos los comandos
- 7:21Speaker 2: relacionados con servicios. Con el sistema de archivos GetShieldItemC, Logs, Recurs, WhereObjectDollar. Length, Git,
- 7:29Speaker 2: Dist y MB encuentra archivos de registro grandes. Para el
- 7:31Speaker 2: sistema GetService, WhereObjectDollar. TattoosecStop enumera los servicios detenidos. Para filtrado, GetProcessed.
- 7:38Speaker 2: Sort Objects, CPU Descending, Select Object First. Cinco, muestra los
- 7:42Speaker 2: cinco procesos que más consume el CPU. Y para exportar
- 7:44Speaker 2: Get Service, exporta un CSV. CSV guarda todo en un archivo.
- 7:48Speaker 2: He aquí por qué esto es importante. Estos cinco grupos
- 7:51Speaker 2: cubren la gran mayoría de lo que harás. No necesitas
- 7:54Speaker 2: ser un experto en PowerShell, solo saber por dónde empezar.
- 7:56Speaker 2: Y el mejor lugar para comenzar es el grupo que
- 7:58Speaker 2: te enseña todo lo demás. Hablemos sobre el descubrimiento. Descubrimiento primero.
- 8:02Speaker 2: Get Help, Get Command, Get Member. Déjame hablarte sobre el
- 8:05Speaker 2: semidelec más importante que aprenderás jamás, Get Help. Es el
- 8:08Speaker 2: manual integrado de PowerShell. Escribe gethelp seguido de cualquier nombre
- 8:12Speaker 2: de comando y te mostrará la sintaxis, los parámetros y,
- 8:15Speaker 2: lo más importante, ejemplos funcionales. No necesitas buscar en internet
- 8:18Speaker 2: ni memorizar nada. La documentación está ahí mismo dentro de
- 8:20Speaker 2: la herramienta. Supongamos que quieres entender cómo funciona GetProcess. Escribe
- 8:24Speaker 2: gethelp getprocess y verás la sintaxis, qué parámetros acepta y
- 8:28Speaker 2: qué hace cada uno, pero la verdad joya está en
- 8:30Speaker 2: los ejemplos gethelp getprocess ejemplo. Sus ejemplos te llevan directamente
- 8:33Speaker 2: a código funcional que puedes copiar y ejecutar. Así es
- 8:36Speaker 2: como aprendes PowerShell desde el mismo PowerShell. Luego está GetCommand.
- 8:39Speaker 2: Este seme de delete lista todo lo disponible en tu sesión.
- 8:42Speaker 2: Cada seme de delete, función y script. Y puedes filtrar. GetCommandVerb.
- 8:48Speaker 2: Get te muestra cada comando Get, de los cuales hay cientos. GetProcess, GetService, GetDate, GetItem, GetContent.
- 8:56Speaker 2: Todos ellos simplemente preguntan. GetCommandOnService muestra cada comando que funciona
- 9:00Speaker 2: con servicios. GetService, StartService, StopService, RestartService, SetService, NewService, RemoveService. No
- 9:06Speaker 2: necesitas adivinar qué disponible. La herramienta te lo dice. Y
- 9:09Speaker 2: luego está GetMember, el que desbloquea todo. Pasa cualquier comando
- 9:13Speaker 2: a GetMember y te mostrará qué hay dentro de los
- 9:15Speaker 2: objetos que devuelve ese comando. Ejecuta GetProcess, GetMember y verás
- 9:20Speaker 2: cada propiedad y método de los objetos de proceso. Nombre, ID, CPU,
- 9:25Speaker 2: conjunto de trabajo, hora de inicio y métodos como Kill, Refresh, WaitForExit.
- 9:30Speaker 2: No tienes que preguntarte qué datos hay disponible. Puedes inspeccionarlos directamente.¿
- 9:33Speaker 2: Por qué esto importa? Nunca necesitas memorizarlo todo. Puedes aprender
- 9:37Speaker 2: sobre Merge. GetHelp te enseña a usar comandos, GetCommand te
- 9:40Speaker 2: muestra qué comandos existen y GetMember te muestra qué datos
- 9:42Speaker 2: devuelven esos comandos. Estos tres en Medlet son tus herramientas ágiles.
- 9:46Speaker 2: Hacen que PowerShell sea autodocumentado. Una vez que sabes que
- 9:49Speaker 2: hay disponible, el siguiente paso es dar forma a esos
- 9:51Speaker 2: datos para que sean útiles. Filtrar, dar forma y exportar,
- 9:54Speaker 2: convirtiendo comandos en informes. Esto es lo importante de PowerShell.
- 9:58Speaker 2: El poder no está en un solo comando, sino en
- 9:59Speaker 2: cómo los comunicamos. a través de la tubería pipeline. Tomas
- 10:02Speaker 2: la salida de un CMD LED, la pasas a otro
- 10:04Speaker 2: y construyes operaciones complejas con bloques simples. WearObject es tu
- 10:09Speaker 2: filtro que solo deja pasar los objetos que coinciden con
- 10:11Speaker 2: tu condición. Por eso, GetService. WearObject, Status, EggRunning. Te da
- 10:15Speaker 2: solo los servicios en ejecución. Nada de desplazarse por una
- 10:18Speaker 2: lista de 100 servicios. El comando hace el filtrado por ti.
- 10:21Speaker 2: Select Object elige qué propiedades quieres ver. Get Process Select
- 10:25Speaker 2: Object Name. CPU Working Set devuelve solo los datos que
- 10:29Speaker 2: te interesan. Elimina los manejadores, la memoria paginada y los
- 10:33Speaker 2: ID de sesión, dejando solo las columnas que pediste. Así
- 10:36Speaker 2: es como conviertes una pared de datos en una tabla
- 10:38Speaker 2: limpia y legible. Solo Object ordena tus resultados. Get Processor
- 10:42Speaker 2: Object CPU Descending. Te muestra primero los procesos que más
- 10:45Speaker 2: CPU consumen para que encuentres el problema de inmediato en
- 10:48Speaker 2: lugar de buscar en una lista desordenada. Export sv, guarda
- 10:52Speaker 2: todo en un archivo que puedes abrir en Excel. Aquí
- 10:54Speaker 2: es donde ocurre la magia. Ejecutas un comando, lo filtras.
- 10:58Speaker 2: Eso es uniforme, eso es automatización. Aquí tienes el patrón
- 11:01Speaker 2: completo reunido. GetService, where objectStatusPartyEq, stopped, select objectName, displayNameExport, ssvStopServices.sv.
- 11:10Speaker 2: Es un solo comando que obtiene todos los servicios. Filtra
- 11:12Speaker 2: solo los detenidos, selecciona el nombre visible y guarda el
- 11:14Speaker 2: resultado en un archivo CSSV. Puedes ejecutar esto en una
- 11:18Speaker 2: máquina o en 100 y obtendrás el mismo resultado siempre.
- 11:20Speaker 2: Esto es lo que reemplaza horas de hacer clic en
- 11:22Speaker 2: interfaces gráficas y copiar y pegar manualmente. En lugar de
- 11:24Speaker 2: abrir services.msc en cada servidor, desplazarte por la lista, anotar
- 11:28Speaker 2: que está detenido y escribirlo en una hoja de cálculo,
- 11:30Speaker 2: ejecutas un comando. Toma segundos, es preciso y es repetible.¿
- 11:34Speaker 2: Por qué importa esto? Pasa desde ser reactivo a ser proactivo.
- 11:37Speaker 2: Puedes ejecutar estos informes según el programa. Cada mañana un
- 11:40Speaker 2: script graviza tus servicios, exporta los resultados y te los
- 11:43Speaker 2: envía por correo. Detectas problemas antes de que se vuelvan
- 11:45Speaker 2: emergencias porque sabes que está ejecutándose, que está detenido y
- 11:47Speaker 2: que necesita atención. En lugar de esperar a que algo
- 11:49Speaker 2: se rompa, te mantienes un paso adelante. Entonces, ahora tienes
- 11:52Speaker 2: las piezas, las herramientas de descubrimiento para saber qué hay disponible,
- 11:55Speaker 2: las de filtrado para encontrar lo importante y las de
- 11:57Speaker 2: exportación para guardar tus resultados. Veamos cómo encajan todas en
- 12:00Speaker 2: un solo sistema. Cómo se conecta todo. La tubería en acción.
- 12:05Speaker 2: La tubería es el corazón de PowerShell, no solo una característica.
- 12:08Speaker 2: Cada CNM de LED genera objetos y la tubería envía
- 12:10Speaker 2: esos objetos directamente al siguiente CNM de LED. Esa simple
- 12:13Speaker 2: idea es lo que hace que PowerShell sea tan potente.
- 12:16Speaker 2: Construyes operaciones complejas a partir de bloques simples una tubería
- 12:19Speaker 2: a la vez. Déjame darte un escenario real. Supongamos que
- 12:22Speaker 2: un usuario llama porque su cuenta está bloqueada. Esto sucede
- 12:24Speaker 2: todo el tiempo. Alguien escribe mal su contraseña demasiadas veces
- 12:27Speaker 2: y de repente no puede iniciar sesión. La vieja forma
- 12:29Speaker 2: de manejar esto es un dolor de cabeza. Abres Usuarios
- 12:32Speaker 2: y Equipos de Active Directory. Recorres la lista. Buscas al usuario.
- 12:36Speaker 2: Haces clic derecho. Revises la cuenta. La desbloqueas. Luego abres
- 12:39Speaker 2: el visor de eventos para encontrar el bloqueo y anotas
- 12:41Speaker 2: manualmente la hora y la fuente. Todo ese proceso toma
- 12:45Speaker 2: de 5 a 10 minutos por usuario, y si tienes
- 12:47Speaker 2: varios llamando, pasas toda la mañana en esto. La forma
- 12:50Speaker 2: de PowerShell es completamente diferente. Un comando getAdducer con el
- 12:54Speaker 2: filtro lockdown.ectrue encuentra cada cuenta bloqueada en tu dominio. Luego
- 12:58Speaker 2: lo canalizas a un local account y eso es todo.
- 13:00Speaker 2: El script encuentra las cuentas bloqueadas y las desbloquea, luego
- 13:03Speaker 2: envías el resultado a una función de registro o lo
- 13:04Speaker 2: exportas a un informe. Tienes un registro de qué sucedió,
- 13:07Speaker 2: cuándo ocurrió y qué cuentas fueron afectadas. Todo es de
- 13:09Speaker 2: una línea de código. Lo importante es que el mismo
- 13:12Speaker 2: patrón funcione en todas partes. Buzones de Exchange, canales de Teams,
- 13:15Speaker 2: sitios de SharePoint, recursos de Azure, los MDLights cambian, pero
- 13:18Speaker 2: la tubería sigue siendo la misma. Obtienes algo, lo filtras,
- 13:21Speaker 2: le haces algo y guardas el resultado. Por ejemplo, GetMailbox,
- 13:24Speaker 2: filtrar por alguna condición, establecer una propiedad, exportar a CSV
- 13:27Speaker 2: o GetTeam, filtrar por membresía, agregar un miembro y registrar
- 13:30Speaker 2: el cambio. El patrón es idéntico cada vez.¿ Por qué
- 13:33Speaker 2: es esto importante? Una vez que entiendes la tubería, puedes
- 13:35Speaker 2: automatizar casi cualquier cosa. El patrón es el mismo si
- 13:38Speaker 2: administras un usuario o mil, un servidor o cien. Aprendes
- 13:42Speaker 2: el patrón una vez y lo aplicas en todas partes.
- 13:44Speaker 2: Muy bien, has visto qué es y cómo funciona. Ahora,
- 13:47Speaker 2: hablemos de lo que deberías hacer a continuación. Tus primeros
- 13:49Speaker 2: pasos hacia el dictamen. No sé por dónde empiezas. Abre
- 13:52Speaker 2: PowerShell y ejecuta GetHelp para comenzar a explorar. Escribe GetHelp,
- 13:56Speaker 2: GetProcess y mira lo que te muestra. Luego escribe GetHelp,
- 13:59Speaker 2: GetServiceExamples y mira los ejemplos funcionales. Así es como aprendes
- 14:02Speaker 2: la herramienta de dentro del ordenador. No necesitas buscar en
- 14:05Speaker 2: internet ni ver tutoriales. La documentación está ahí mismo. Después
- 14:09Speaker 2: elige una tarea que haga semana. Quizás sea verificar qué
- 14:11Speaker 2: servicios están ejecutando en un servidor, listar archivos en una
- 14:13Speaker 2: carpeta o exportar un informe. Escribe una línea para ello
- 14:16Speaker 2: y empieza de forma sencilla. Algo como GetService, WhereObjectStatusIqFrontEnd. Eso
- 14:21Speaker 2: es una sola línea. Ejecútalo, observa la salida y guarda.
- 14:23Speaker 2: Acabas de automatizar algo que solías hacer manualmente. Luego usa
- 14:26Speaker 2: GetCommand y GetMember para descubrir qué es posible. No necesitas
- 14:29Speaker 2: saberlo todo de antemano, solo cómo encontrar lo que necesitas.
- 14:32Speaker 2: Get Command Now Service te muestra todos los comandos relacionados
- 14:35Speaker 2: con servicios y Get Process Get Member te muestra cada
- 14:37Speaker 2: propiedad de los objetos de proceso. La herramienta te dice
- 14:41Speaker 2: lo que puede hacer, solo tienes que preguntar. El mejor
- 14:43Speaker 2: primer paso es en sí. Automatiza la tarea que haces
- 14:45Speaker 2: con más frecuencia. Incluso una línea de comandos simple te
- 14:47Speaker 2: ahorra tiempo. Si revisas los servicios cada mañana, escribe una
- 14:50Speaker 2: línea que los revise por ti. Si limpias archivos temporales
- 14:53Speaker 2: cada semana, escribe una línea que lo haga. Empieza poco
- 14:55Speaker 2: a poco y construye aprendizaje. Ahora,¿ a dónde ir desde aquí?
- 14:58Speaker 2: Microsoft Learn tiene rutas de aprendizaje gratuitas de PowerShell. Son estructuradas,
- 15:02Speaker 2: prácticas y completamente gratuitas. La PowerShell Gallery tiene miles de
- 15:06Speaker 2: módulos de la comunidad, así que alguien probablemente ya escribió
- 15:08Speaker 2: un módulo para lo que intentas hacer. No necesitas reinventar
- 15:11Speaker 2: la rueda. PowerShell es una habilidad, no solo una herramienta.
- 15:13Speaker 2: Cuanto más la uses, más sentido tiene. No necesitas ser
- 15:16Speaker 2: un desarrollador. Solo necesitas empezar. Diez minutos al día bastan
- 15:19Speaker 2: para desarrollar una capacidad real. Ejecuta un comando hoy, ejecuta
- 15:22Speaker 2: dos mañana, y antes de que te des cuenta estarás
- 15:23Speaker 2: automatizando cosas que nunca creíste poder. Así que eso es PowerShell,
- 15:27Speaker 2: el lenguaje que conecta todo el ecosistema de Microsoft. Ábrelo
- 15:30Speaker 2: y ejecuta Get Processed para ver cómo se ve. Luego
- 15:32Speaker 2: suscríbete para más cápsulas de conocimiento y deja un comentario
- 15:35Speaker 2: sobre lo que quieres automatizar.¿ Cuál es una tarea que
- 15:37Speaker 2: desearías poder automatizar? Déjamelo saber. Podría cubrirla en un futuro episodio.