Soy un usuario de Mac y soy nuevo en Windows. ¿Cómo puedo ejecutar un script de shell en Windows?
En general, guardaría el archivo de texto con la extensión .sh
y lo ejecutaría a través de la Terminal. Pero, ¿cómo podría hacer eso en Windows?
windows
shell-script
Terminator
fuente
fuente
.sh
script de shell preexistente ? ¿O simplemente quieres saber cómo hacer un script para Windows?Respuestas:
Las secuencias de comandos con un
.sh
sufijo son generalmente secuencias de comandos de shell Bourne (o bash, o ksh, o zsh, todas las shells derivadas del shell Bourne). (Tenga en cuenta que en los sistemas tipo Unix, incluido MacOS, el.sh
sufijo no es necesario; el sistema operativo mira la#!/bin/sh
línea en la parte superior del script para determinar cómo ejecutarlo).Windows no proporciona un shell tipo Bourne.
Puede instalar Cygwin , que proporciona un entorno similar a Unix en Windows, pero no tiene un entorno particularmente "nativo". (Comentario editorial: Cygwin es ideal para personas como yo que necesitan usar Windows pero prefieren usar Unix).
Hay otros subsistemas similares a Unix que se ejecutan en Windows, incluidos MinGW y el paquete de Servicios de Windows para UNIX proporcionado por Microsoft.
O, en lugar de intentar escribir y ejecutar scripts de shell tipo Unix, puede escribir archivos por lotes de Windows. Estos generalmente tienen un
.bat
o.cmd
sufijo. Usan los mismos comandos y sintaxis que el símbolo del sistema interactivo de Windows.También está el relativamente nuevo Windows PowerShell ; No estoy familiarizado con eso, pero he oído cosas buenas al respecto.
fuente
Puedes usar Cygwin . Proporciona un entorno similar a Linux en Windows.
fuente
En Win, las extensiones comunes son
.bat
o.cmd
. Una buena fuente para los comandos utilizados en el shell de Windows es ss64 , para CMD y PowerShell.Cygwin no es un "must". Simplemente le está dando el estilo Linux: use BASH en Win.
fuente
¿Qué hay de UWIN?
UWIN es un paquete de software creado por David Korn que permite que los programas escritos para el sistema operativo Unix se creen y ejecuten en Microsoft Windows con pocos cambios, si es que los hay. Parte del desarrollo de software se subcontrató a Wipro, India.
Comprueba esto UWIN - Unix para Windows
Características destacadas de UWIN
Usos de UWIN
Inconvenientes de UWIN
Ese software se usó para enseñarnos el comando Linux cuando estaba en la universidad ... realmente bueno ...
Ref: WikiPedia
Cygwin es un entorno similar a Unix y una interfaz de línea de comandos para Microsoft Windows.
Interix
Interix es un componente de los Servicios para Unix (SFU) versión 3.0 y 3.5 ( este último se distribuye libremente ).
fuente
Hay otra forma de hacer esto con la actualización de aniversario para Windows 10 . Ahora hay un shell Bash (Ubuntu) disponible en Windows.
Para usarlo, debe instalar la función, ya que no está habilitada de forma predeterminada.
Vaya a
Control Panel
->Programs
->Turn Windows Features On and Off
.Seleccione la casilla de verificación para
Windows Subsystem for Linux (Beta)
. Esto instalará la función y solicitará un reinicio.Luego puede abrir un símbolo del sistema a través de ejecutar ->
cmd
luego escribirbash
o ejecutar ->bash.exe
.Esto le dará un bash shell sin máquina virtual o Cygwin o virtualbox.
fuente
Aunque las respuestas existentes aquí eran correctos en el momento, Windows 10 hace ahora incluyen opcionalmente una versión modificada de Ubuntu ejecutar un shell bash completa .
Una vez instalado, puede abrir un indicador de bash (al igual que lo haría con un terminal en OS X / macOS) y ejecutar el script como de costumbre, es decir:
Si desea ejecutar un script directamente desde Windows, puede crear un acceso directo en el mismo directorio y establecer el 'Destino' en algo como:
Si la ruta de su script es relativa a la ubicación del acceso directo (como en el ejemplo anterior), asegúrese de que el campo 'Iniciar en' también esté en blanco.
fuente
Necesitará CygWin, y luego creo que podrá ejecutar:
fuente
La respuesta correcta fue dada en un comentario por Kenaniah, tienes que usar archivos por lotes . Debe nombrar su archivo de código de shell a * .bat, luego puede ejecutarlo haciendo clic en él o simplemente escribir su nombre en el terminal. Tenga en cuenta que el terminal de Windows no funciona exactamente como el terminal de Unix. Encontrará mucha ayuda y tutoriales para los comandos y la sintaxis en toda la web. También existe la posibilidad de usar Windows PowerShell , que parece ser más unix.
fuente