Con la llegada del shell Bash de Windows 10, ahora puede crear y ejecutar scripts Bash en Windows 10. También puede incorporar Bash comandos en un archivo por lotes de Windows o script de PowerShell.
Incluso si sabe lo que está haciendo, esto no es necesariamente tan simple como parece. Windows y UNIX usan diferentes caracteres de final de línea, y se puede acceder al sistema de archivos de Windows en una ubicación diferente en el entorno Bash.
RELACIONADO: Cómo Instalar y utilizar Linux Bash Shell en Windows 10
Al escribir scripts de shell en Windows, tenga en cuenta que los sistemas Windows y UNIX como Linux utilizan caracteres diferentes de "fin de línea" en archivos de texto en scripts de shell.
En otras palabras, esto significa que no puede simplemente escribir un script de shell en el Bloc de notas. Guarde el archivo en el Bloc de notas y Bash no lo interpretará correctamente. Sin embargo, puede utilizar editores de texto más avanzados; por ejemplo, Notepad ++ le permite asignarle un archivo de caracteres de fin de línea a UNIX haciendo clic en Editar> Conversión de EOL> Formato UNIX / OSX.
Sin embargo, es mejor que solo escribiendo el script de shell en el entorno Bash mismo. El entorno Bash basado en Ubuntu viene con los editores vi y nano text. El editor vi es más poderoso, pero si nunca lo ha usado antes, puede comenzar con nano. Es más fácil de usar si eres nuevo.
Por ejemplo, para crear un script bash en nano, ejecutarías el siguiente comando en bash:
nano ~ / myscript.sh
Esto abriría el Nano editor de texto señaló un archivo llamado "myscript.sh" en el directorio de inicio de su cuenta de usuario. (El carácter "~" representa su directorio de inicio, por lo que la ruta completa es /home/username/myscript.sh.)
Inicie su script de shell con la línea:
#! / Bin / bash
RELACIONADO : La guía para principiantes de las secuencias de comandos de Shell: conceptos básicos
Introduzca los comandos que desea ejecutar, cada uno en su propia línea. El script ejecutará cada comando por turno. Agregue un carácter "#" antes de una línea para tratarlo como un "comentario", algo que le ayuda a usted y a otras personas a entender el guión, pero que no se ejecuta como un comando. Para obtener trucos más avanzados, consulte una guía más detallada de scripts de Bash en Linux. Las mismas técnicas funcionarán en Bash en Ubuntu en Windows.
Tenga en cuenta que no hay forma de ejecutar programas de Windows desde el entorno Bash. Está restringido a los comandos y las utilidades del terminal de Linux, tal como lo haría en un sistema Linux típico.
Por ejemplo, usemos un script básico de "hello world" como ejemplo aquí:
#! / Bin / bash # configura la variable STRING STRING = "¡Hola Mundo!" # imprimir los contenidos de la variable en la pantalla echo $ STRING
Si está usando el editor de texto Nano, puede guardar el archivo presionando Ctrl + O y luego Enter. Cierre el editor presionando Ctrl + X.
Probablemente quiera hacer que el script sea ejecutable para que pueda ejecutarlo más fácilmente. En Linux, eso significa que debe darle al archivo de script el permiso ejecutable. Para hacerlo, ejecute el siguiente comando en el terminal y apúntelo a su script:
chmod + x ~ / myscript.sh
Para ejecutar el script, ahora puede simplemente ejecutarlo en el terminal escribiendo su ruta . Siempre que desee iniciar el script en el futuro, simplemente abra el shell Bash y escriba la ruta al script.
~ / myscript.sh
(Si el script está en el directorio actual, puede ejecutarlo con ./myscript.sh)
RELACIONADO: Cómo acceder a los archivos Bash de Ubuntu en Windows (y en la unidad del sistema de Windows en bash)
Para acceder Los archivos de Windows en la secuencia de comandos, deberá especificar su ruta en / mnt / c, no su ruta de Windows. Por ejemplo, si desea especificar el archivo C: Users Bob Downloads test.txt, deberá especificar la ruta /mnt/c/Users/Bob/Downloads/test.txt. Consulte nuestra guía de ubicaciones de archivos en el shell Bash de Windows 10 para obtener más información.
RELACIONADO: Cómo establecer tu distribución predeterminada de Linux en Windows 10
Por último, si tienes un archivo por lotes o un script PowerShell al que deseas incorporar comandos, puedes ejecutar los comandos Bash directamente usando elbash - c
comando.
Por ejemplo, para ejecutar un comando de Linux en un símbolo del sistema o ventana de PowerShell, puede ejecutar el siguiente comando:
bash -c "comando"
Este truco le permite agregar Comandos Bash en archivos por lotes o scripts de PowerShell. La ventana del shell Bash aparecerá cuando se ejecute un comando Bash.
Actualizar : si tiene múltiples entornos Linux instalados, puede usar el comando wslconfig para elegir el entorno Linux predeterminado utilizado al ejecutar elbash -c
comando.
Para crear un acceso directo a un script Bash desde Windows, simplemente cree un acceso directo como lo hace normalmente. Para el destino del atajo, use el comandobash -c
que hemos descrito anteriormente y apúntelo al script Bash que creó.
Por ejemplo, apuntaría un atajo a "bash -c "~ / myscript.sh"
"para ejecutar el script de ejemplo anterior. También puede ejecutar este comando desde una ventana de símbolo del sistema o de PowerShell también.
¿Por qué algunos archivos de Windows y nombres de carpetas tienen un punto delante de ellos?
Si bien la mayoría de nosotros solo vemos nombres normales de archivos y carpetas en nuestros sistemas Windows, otras personas pueden haber encontrado algo un poco más inesperado: nombres de archivos y carpetas con un punto delante de ellos. ¿Por qué pasó esto? La publicación de preguntas y respuestas SuperUser de hoy tiene la respuesta a una pregunta de lector muy curiosa.
Cómo agregar una batería más duradera a su teléfono inteligente
Bueno, es mediodía y la batería de su teléfono ya está al 37 por ciento. Hay formas de evitar este desastre, agregando más capacidad de la batería a su teléfono inteligente favorito. Los teléfonos se vuelven más delgados cada año, ¡si solo mantuvieran el mismo grosor y tuvieran una batería más grande!