Contenidos
Archivo de script Powershell
Windows PowerShell es una poderosa herramienta para automatizar tareas y simplificar la configuración, y puede utilizarse para automatizar casi cualquier tarea del ecosistema de Windows, incluidos Active Directory y Exchange. No es de extrañar que se haya convertido en una herramienta popular entre los administradores de sistemas y los usuarios experimentados de Windows.
En nuestro tutorial de PowerShell, le mostramos cómo utilizar algunas de las herramientas más útiles de PowerShell. Ahora es el momento de dar el siguiente paso: utilizar estas herramientas desde scripts que se pueden ejecutar con un solo clic. Este tutorial de scripts de PowerShell le mostrará cómo escribir y ejecutar scripts básicos en PowerShell y, en última instancia, le ahorrará mucho tiempo.
El lenguaje PowerShell es una sintaxis de programación propietaria de alto nivel desarrollada por Microsoft con el propósito clave de permitir a los administradores de sistemas automatizar acciones y configuraciones. El lenguaje se basa en estándares orientados a objetos, pero sólo puede utilizarse en entornos Windows. Forma parte del marco .NET y suele tener código C# subyacente a sus funciones, aunque el conocimiento de C# no es un requisito previo para aprender PowerShell. La comparación más cercana al lenguaje PowerShell es Perl, que se utiliza en escenarios similares en entornos Linux.
Ejecutar un script de powershell
Un Archivo de Script de Windows (WSF) es un tipo de archivo utilizado por el Host de Script de Microsoft Windows. Permite mezclar los lenguajes de scripting JScript y VBScript dentro de un mismo archivo, u otros lenguajes de scripting como Perl, Object REXX, Python o Kixtart si son instalados por el usuario. Estos tipos de scripts también pueden utilizarse para enlazar muchos otros scripts externos utilizando un parámetro src en la etiqueta <script> de forma similar a HTML. Los Archivos de Script de Windows tienen la extensión “.WSF”. Un WSF hace referencia a cada módulo de script en una jerarquía XML muy básica como se muestra a continuación, adhiriéndose a esos estándares fuera de las etiquetas <script>. El uso literal de “</script>” o “<script>” dentro de sus etiquetas <script> y retos similares pueden ser manejados por el uso de CDATA, como se muestra en los ejemplos.
Un FSM puede ser útil para aislar errores. Su naturaleza modular evita que una referencia de script interfiera con otra. Aquí hay un ejemplo de FSM con un módulo que produce un error y otro que no:
El primer módulo de script producirá un error de “división por cero”. Normalmente, esto haría que el script terminara en el Windows Script Host, pero este método modular permite que el script continúe y ejecute el segundo módulo de script.
Comandos Powershell
Es independiente del lenguaje en el sentido de que puede hacer uso de diferentes motores de lenguaje de Active Scripting. Por defecto, interpreta y ejecuta JScript en texto plano (archivos .JS y .JSE) y VBScript (archivos .VBS y .VBE).
Los usuarios pueden instalar diferentes motores de scripting para poder escribir en otros lenguajes, por ejemplo PerlScript. También se puede utilizar la extensión de nombre de archivo WSF, independiente del lenguaje. La ventaja del archivo de scripts de Windows (.WSF) es que permite realizar múltiples scripts (“trabajos”) así como una combinación de lenguajes de scripts dentro de un mismo archivo.
El Archivo de Script de Windows se distribuye e instala por defecto en Windows 98 y versiones posteriores de Windows. También se instala si se instala Internet Explorer 5 (o una versión posterior). A partir de Windows 2000, Windows Script Host está disponible para su uso con scripts de inicio de sesión de usuario.
El Windows Script Host puede utilizarse para una variedad de propósitos, incluyendo scripts de inicio de sesión, administración y automatización general. Microsoft lo describe como una herramienta de administración[5] WSH proporciona un entorno para la ejecución de scripts – invoca el motor de scripts apropiado y proporciona un conjunto de servicios y objetos para que el script trabaje[5] Estos scripts pueden ser ejecutados en modo GUI (WScript.exe) o en modo de línea de comandos (CScript.exe), o desde un objeto COM (wshom.ocx), ofreciendo flexibilidad al usuario para scripts interactivos o no interactivos[6] Windows Management Instrumentation también es scriptable por este medio.
La ejecución de scripts está desactivada en este sistema
Todos sabemos que Windows 10 instala un montón de cosas que no necesitas o quieres, incluyendo aplicaciones como OneDrive o Skype que no son fáciles de eliminar. También hay un montón de programas que puedes encontrar en línea que afirman eliminar algunas o todas las aplicaciones nativas y la telemetría que Windows recopila y envía a Microsoft, todos con resultados variables, algunos incluso paralizan otras partes del sistema operativo para lograrlo, lo que no es agradable.
El desarrollador promociona 150 funciones diferentes del script, como la configuración de una tarea para limpiar las carpetas TEMP, la desinstalación de OneDrive de la “manera correcta” y la capacidad de cambiar la ubicación de las carpetas de usuario mediante programación, y los ajustes obvios relacionados con la privacidad, algunos de los cuales se pueden ver a continuación (la lista completa está aquí):
En definitiva, sólo deberías probar esto en instalaciones nuevas, y si decides hacerlo en tu sistema sin reinstalar, haz primero una copia de seguridad para poder retroceder. No hace falta decir que esto requiere un poco de paciencia y probablemente no es para el usuario medio, sino más bien para el usuario avanzado.