Cómo ejecutar secuencias de comandos de Shell en Windows

Icono de tiempo de lectura 7 minuto. leer


Los lectores ayudan a respaldar a MSpoweruser. Es posible que obtengamos una comisión si compra a través de nuestros enlaces. Icono de información sobre herramientas

Lea nuestra página de divulgación para descubrir cómo puede ayudar a MSPoweruser a sostener el equipo editorial. Leer más

Los archivos de script de shell o archivos SH (extensión .sh) pueden ser realmente útiles para los ingenieros de software cuando realizan una amplia variedad de operaciones, desde el procesamiento de archivos hasta la ejecución de programas y más. Se sabe que este archivo de comandos de lenguaje de secuencias de comandos que contiene una serie de comandos se usa para el sistema operativo Linux al ejecutarlo a través de un programa de computadora llamado BASH. En relación con eso, los scripts de shell Bash están escritos en el lenguaje BASH (Bourne-Again Shell) que es reconocido por los programas de Linux. Sin embargo, usarlo directamente en Windows a través del símbolo del sistema o PowerShell terminal no es posible ya que el lenguaje de comandos no es conocido por el sistema. Afortunadamente, hay una variedad de formas de ejecutar archivos .sh o scripts de shell en Windows 10 y Windows 11.

Usar archivos de script de shell en Linux es más simple que ejecutarlos en Windows. En el último sistema, necesitará el uso de otro software para ejecutar scripts bash como archivos por lotes que funcionan para sistemas Windows. También puede intentar convertir archivos de shell de secuencias de comandos en archivos BAT ejecutables de Windows, pero requerirá un conocimiento inmenso en los comandos de secuencias de comandos y archivos por lotes, incluida la traducción de un archivo de secuencias de comandos en un archivo por lotes. Esta opción es complicada, pero existen formas más sencillas de ejecutar scripts de shell en Windows 10/11. Éstos son algunos de ellos.

Subsistema de Windows para Linux

La primera opción es usar el subsistema de Windows para Linux o WSL, una capa de compatibilidad para ejecutar ejecutables binarios de Linux de forma nativa en sistemas Windows. Es aplicable a la mayoría de los escenarios, lo que le permite ejecutar un script de shell en Windows 11/10.

WSL no está disponible automáticamente, por lo que debe habilitarlo a través de la configuración de desarrollador de su dispositivo Windows. Puede hacerlo yendo a Configuración> Actualización y seguridad> Para desarrolladores. Active el modo de desarrollador y confirme el aviso seleccionando Sí. A continuación, busque las funciones de Windows (puede usar la barra de búsqueda Buscar una configuración) y elija la opción "Activar o desactivar las funciones de Windows". Esto le dará una lista emergente de ventana, en la que debería ver la función "Subsistema de Windows para Linux". Marque la casilla junto a ese elemento y haga clic en Aceptar para instalarlo. Tomará uno o dos minutos, ya que el proceso implicará buscar archivos relevantes para la función y aplicar los cambios, pero pronto le pedirá que reinicie su máquina una vez que se complete el proceso. Después de reiniciar, BASH ya debería estar disponible en el Símbolo del sistema y PowerShell.

Después de eso, debe obtener Ubuntu para acceder al sistema de archivos de Linux y ejecutar directamente los comandos y herramientas de Linux y los scripts Bash o archivos .sh en un entorno Linux en Windows. Para hacerlo, vaya a Microsoft Store y descargue Ubuntu, que le dará la distribución de Linux. Después de eso, abra Ubuntu para permitirle realizar la instalación en el disco duro e integrarse con WSL. Luego se le pedirá que cree un nombre de usuario y una contraseña para completar el proceso. También puede instalar una distribución para Windows usando el comando Power shell “Invocar-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing"o el comando curl"curl.exe -L -o ubuntu-1604.appx https://aka.ms/wsl-ubuntu-1604“. Luego, actualice y actualice la distribución de Linux descargando paquetes adicionales usando los comandos “actualización de sudo apt && actualización de sudo apt."

Una vez que todo esté resuelto, puede intentar ejecutar scripts de shell en el símbolo del sistema de Windows. Localice los archivos de secuencias de comandos almacenados como archivos de texto en su sistema y haga clic con el botón derecho en un espacio vacío dentro de la carpeta donde se encuentran los archivos de secuencias de comandos mientras presiona la tecla Mayús. Esto le dará la opción de "Abrir símbolo del sistema aquí" o "Abrir ventana de PowerShell aquí". Seleccione esa opción, escriba "bash" en la ventana del símbolo del sistema o en la interfaz de PowerShell, y presione la tecla Intro para iniciar el indicador de distribución. Esto lo llevará al shell bash, lo que significa que el entorno de Windows ha cambiado a BASH. Confirmando esto es la nueva línea que aparecerá en la ventana del terminal. Finalmente, puede comenzar a escribir el archivo .sh en la ventana de la terminal y simplemente presionar Enter.

Cygwin

Cygwin tiene una colección de herramientas GNU y de código abierto que brindan una funcionalidad similar a una distribución de Linux en Windows. El uso de esto le permitirá compilar aplicaciones o programas de Unix o Linux y ejecutarlos en un sistema operativo (SO) de Microsoft Windows desde una interfaz similar a Linux comparable a Linux BASH.

Cygwin es gratuito, por lo que puede descargarlo en cualquier momento en Sitio web oficial de Cygwin. Descargue e inicie la instalación del archivo setup-x86_64.exe. Hay dos versiones de Cygwin: las versiones de 32 y 64 bits. No obstante, sugerimos tener este último ya que "una distribución completa de Cygwin de 32 bits ya no es factible, y con toda probabilidad fallará en lugares aleatorios debido a un problema con la llamada del sistema de bifurcación", como se indica en su página web. El Cygwin de 32 bits es solo para escenarios limitados, incluso cuando no hay forma de ejecutar una versión de Cygwin de 64 bits. Una vez que se haya descargado el instalador de la GUI (que se puede ejecutar para descargar una instalación completa de Cygwin), ábralo en la carpeta Descargas y siga las instrucciones en cada pantalla para instalar Cygwin. Su sitio también tiene un documento detallado para configurarlo.

Una vez que esté listo, abra la Terminal Cygwin64 a través del acceso directo que producirá el instalador en el escritorio. Proporcione el comando “cd C:Usuarios/Nombre de usuario/Escritorio” para cambiar el directorio donde se almacena el archivo de script. Después de eso, puede comenzar a ejecutar scripts de shell. Simplemente escriba el nombre del archivo SH junto con la extensión .sh (p. ej., sh test.sh).

Git

Git es un sistema de control de versiones gratuito y de código abierto ideal para un grupo de programadores que trabajan juntos o se coordinan en un proyecto de código fuente. Puede realizar un seguimiento de los cambios que realiza en los archivos a lo largo del tiempo, lo que le permite ver quién realizó cambios en un archivo en diferentes momentos y revertir los archivos a un estado anterior.

Las PC con Linux y macOS tienen Git preinstalado como su herramienta de línea de comandos, pero Git también tiene versiones para todos los sistemas operativos descargables en su página web oficial. En este caso, le gustaría tener Git para Windows. Una vez descargado, visite su carpeta de Descargas y abra el archivo de instalación descargado para iniciar la instalación de Git. Siga las instrucciones que aparecerán en la pantalla del dispositivo a medida que avanza la instalación y asegúrese de marcar la opción "Git bash aquí" cuando aparezca una ventana emergente que confirme la configuración deseada para los componentes. En cuanto a las otras opciones para el resto de los componentes, simplemente manténgalos marcados por defecto. Simplemente siga seleccionando Siguiente hasta llegar al botón Instalar. Cierre el asistente de instalación y abra Git Bash buscándolo en su computadora. Verá otras aplicaciones relacionadas con Git, pero haga clic en la que dice "Git Bash".

Una vez iniciado, debe cambiar el directorio donde se encuentra su archivo usando el comando "cd escritorio". Además, puede ir a la carpeta donde está almacenado el archivo SH y hacer clic derecho en la carpeta para seleccionar la opción "Git Bash Here". Cuando aparece el terminal de comandos de Git o Git Bash, puede comenzar a poner los comandos de ejecución de SH. Simplemente escriba el nombre del archivo SH junto con la extensión .sh (p. ej., sh test.sh).

Más sobre los temas: Comandos de Bash, Cygwin, git bash, Linux, PowerShell, programación, archivos SH, archivos de comandos de shell, guiones de shell, Ubuntu