Cómo ejecutar programas de Windows desde Bash Shell de Windows 10

En Creators Update , el shell Bash de Windows 10 ahora le permite ejecutar binarios de Windows y comandos estándar del símbolo del sistema, directamente desde Bash. Puede ejecutar programas de Linux y Windows desde el mismo shell de Bash, o incluso incorporar comandos de Windows en un script de Bash.

Lo que necesitas saber

A continuación, se muestran algunos detalles básicos que debe conocer sobre esta función:

  • Cuenta de usuario : los programas iniciados desde el shell Bash se ejecutarán como si fueran iniciados por la cuenta de usuario actual de Windows.
  • Permisos : estos programas tendrán los mismos permisos que el proceso Bash.exe. Por lo tanto, si desea que estos comandos tengan acceso de administrador, deberá ejecutar el shell Bash como administrador.
  • Directorio de trabajo : los programas de Windows comparten el mismo «directorio de trabajo» que el shell Bash. Por lo tanto, si ejecuta un comando que enumera el contenido del directorio actual, mostrará el contenido del directorio de trabajo actual en el shell Bash. Utilice el cd comando para cambiar los directorios de trabajo.

Con eso en mente, echemos un vistazo a cómo ejecutar un programa.

Cómo ejecutar un programa de Windows

Para ejecutar un programa de Windows, ingrese la ruta al archivo .exe del programa en el shell Bash. Recuerde que su unidad Windows C: está disponible en / mnt / c en Bash . El entorno Bash también distingue entre mayúsculas y minúsculas, por lo que debe especificar las mayúsculas correctas.

Digamos que desea iniciar la utilidad Ping ubicada en C: \ Windows \ System32 \ PING.EXE. Ejecutarías el siguiente comando:

/mnt/c/Windows/System32/PING.EXE

El siguiente comando no funcionaría, porque Bash distingue entre mayúsculas y minúsculas:

/mnt/c/windows/system32/ping.exe

Esto es un poco más complicado si la ruta contiene caracteres complejos como espacios y corchetes, como las carpetas de Archivos de programa. Tiene que «escapar» de los espacios, corchetes y otros caracteres complejos prefijándolos con un carácter «\».

Relacionado:  Windows en ARM no tiene ningún sentido (todavía)